Skip to content

Commit 7770af4

Browse files
committed
What's new in ANNIVERSARY 2023 (20231202) AML2.0 Edition
* Arbitrary rectangular NxM mesh leveling density (AML2.0) * Mesh size and mesh density are also saved in UBL slots (AML2.0) * Adds Custom g-code C29 M for maximize and C29 C for center mesh area (AML2.0) * Larger font for numeric values in bed tramming wizard * Run-out icon blink is disabled if run-out sensor is disabled * Mesh viewer is now able to show a mesh with NAN points * Disables UBL_SAVE_ACTIVE_ON_M500 and ZOFFSET_SAVE_SETTINGS for AML2.0 compatibility * Define PREHEAT_TIME_HOTEND_MS 7500 for compatibility with high temperature thermistors **New in source code:** * ProUI extension support for Monochrome LCD displays (CR10 Type, TFT MarlinUI, etc) * ProUI extension support for MarlinUI touch screens * C104 support can be removed for better special temperature sensor compatibility * Allows to use bed tramming wizard without a leveling system * Bed tramming wizard can be disabled for reduce program memory size * Allows compile without a bed probe or leveling system * Fix sound on encoder tick when SPEAKER is enabled * Fix sound alarm on thermal runaway when SPEAKER is enabled * Increased board support (Octopus Pro) * Moved some text strings to language files for better translation * New menu system with better memory allocation * Code optimization to reduce program memory size **From Marlin Bugfix** * Automatic minimum planner junction speed (#26198) * Nonlinear Extrusion Control (M592) (#26127) * More precision in G30 output (#26255) * Allow arbitrary BLOCK_BUFFER_SIZE * Fixes for G2/G3 arcs (#26170) * Reversible file alpha sorting (#26130) * And many other Bug fixes and improvements from the Marlin bugfix branch Demo firmwares are restricted to a print time of one hour.
1 parent c720172 commit 7770af4

File tree

3,143 files changed

+1761855
-11
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

3,143 files changed

+1761855
-11
lines changed

.gitattributes

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Set the default behavior, in case people don't have core.autocrlf set.
2+
* text=auto
3+
4+
# Files with Unix line endings
5+
*.c text eol=lf
6+
*.cpp text eol=lf
7+
*.h text eol=lf
8+
*.ino text eol=lf
9+
*.py text eol=lf
10+
*.sh text eol=lf
11+
*.scad text eol=lf
12+
13+
# Files with native line endings
14+
# *.sln text
15+
16+
# Binary files
17+
*.png binary
18+
*.jpg binary
19+
*.fon binary
20+
*.bin binary
21+
*.woff binary

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,13 @@ body:
110110

111111
- type: input
112112
attributes:
113-
label: Add-ons
114-
description: Please list any hardware add-ons that could be involved.
113+
label: LCD/Controller
114+
description: Some Marlin behaviors are determined by the controller. Describe your LCD/Controller model and version.
115+
116+
- type: input
117+
attributes:
118+
label: Other add-ons
119+
description: Please list any other hardware add-ons that could be involved.
115120

116121
- type: dropdown
117122
attributes:

.github/code_of_conduct.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,9 @@ Project maintainers are responsible for clarifying the standards of acceptable b
2828

2929
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
3030

31-
## Scope
32-
33-
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
34-
3531
## Enforcement
3632

37-
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at [[email protected]](mailto:[email protected]). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
38-
39-
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
33+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by messaging @MarlinFirmware/moderators on the relevant issue, [or privately](//github.com/orgs/MarlinFirmware/teams/moderators). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances.
4034

4135
## Attribution
4236

.github/contributing.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ The following is a set of guidelines for contributing to Marlin, hosted by the [
2626

2727
## Code of Conduct
2828

29-
This project and everyone participating in it is governed by the [Marlin Code of Conduct](code_of_conduct.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to [[email protected]](mailto:marlinfirmware@github.com).
29+
This project and everyone participating in it is governed by the [Marlin Code of Conduct](code_of_conduct.md). By participating, you are expected to uphold this code. Please report unacceptable behavior by messaging @MarlinFirmware/moderators on the relevant issue, [or privately](//github.com/orgs/MarlinFirmware/teams/moderators).
3030

3131
## I don't want to read this whole thing I just have a question!!!
3232

.github/workflows/test-builds.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ jobs:
9696

9797
# STM32H7
9898
- BTT_SKR_SE_BX
99+
- STM32H743VI_btt
99100

100101
# STM32F1 (Maple)
101102
- jgaurora_a5s_a1_maple
@@ -111,6 +112,9 @@ jobs:
111112
#- STM32F103RC_btt_maple
112113
#- STM32F103RE_creality_maple
113114

115+
# STM32G0
116+
- STM32G0B1RE_btt
117+
114118
# LPC176x - Lengthy tests
115119
- LPC1768
116120
- LPC1769

.gitignore

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
#
2+
# Marlin 3D Printer Firmware
3+
# Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4+
#
5+
# Based on Sprinter and grbl.
6+
# Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
7+
#
8+
# This program is free software: you can redistribute it and/or modify
9+
# it under the terms of the GNU General Public License as published by
10+
# the Free Software Foundation, either version 3 of the License, or
11+
# (at your option) any later version.
12+
#
13+
# This program is distributed in the hope that it will be useful,
14+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
15+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16+
# GNU General Public License for more details.
17+
#
18+
# You should have received a copy of the GNU General Public License
19+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
20+
#
21+
22+
# Generated files
23+
_Version.h
24+
bdf2u8g.exe
25+
genpages.exe
26+
marlin_config.json
27+
mczip.h
28+
language*.csv
29+
out-csv/
30+
out-language/
31+
*.gen
32+
*.sublime-workspace
33+
34+
# OS
35+
applet/
36+
.DS_Store
37+
38+
# Compiled C++ Object files
39+
*.slo
40+
*.lo
41+
*.o
42+
*.obj
43+
*.ino.cpp
44+
45+
# Precompiled Headers
46+
*.gch
47+
*.pch
48+
49+
# Compiled Dynamic libraries
50+
*.so
51+
*.dylib
52+
*.dll
53+
54+
# Fortran module files
55+
*.mod
56+
*.smod
57+
58+
# Compiled Static libraries
59+
*.lai
60+
*.la
61+
*.a
62+
*.lib
63+
64+
# Executables
65+
*.exe
66+
*.out
67+
*.app
68+
69+
# Compiled C Object files
70+
*.o
71+
*.ko
72+
*.obj
73+
*.elf
74+
75+
# Precompiled Headers
76+
*.gch
77+
*.pch
78+
79+
# Libraries
80+
*.lib
81+
*.a
82+
*.la
83+
*.lo
84+
85+
# Shared objects (inc. Windows DLLs)
86+
*.dll
87+
*.so
88+
*.so.*
89+
*.dylib
90+
91+
# Executables
92+
*.exe
93+
*.out
94+
*.app
95+
*.i*86
96+
*.x86_64
97+
*.hex
98+
99+
# Debug files
100+
*.dSYM/
101+
*.su
102+
103+
# PlatformIO files/dirs
104+
.pio*
105+
.pioenvs
106+
.piolibdeps
107+
.clang_complete
108+
.gcc-flags.json
109+
/lib/
110+
111+
# Secure Credentials
112+
Configuration_Secure.h
113+
114+
# Visual Studio
115+
*.sln
116+
*.vcxproj
117+
*.vcxproj.user
118+
*.vcxproj.filters
119+
Release/
120+
Debug/
121+
__vm/
122+
.vs/
123+
vc-fileutils.settings
124+
125+
# Visual Studio Code
126+
.vscode/*
127+
!.vscode/extensions.json
128+
129+
# Simulation files
130+
imgui.ini
131+
eeprom.dat
132+
spi_flash.bin
133+
fs.img
134+
135+
# CMake
136+
buildroot/share/cmake/*
137+
CMakeLists.txt
138+
!buildroot/share/cmake/CMakeLists.txt
139+
src/CMakeLists.txt
140+
CMakeListsPrivate.txt
141+
build/
142+
143+
# CLion
144+
cmake-build-*
145+
146+
# Eclipse
147+
.project
148+
.cproject
149+
.pydevproject
150+
.settings
151+
.classpath
152+
153+
# Python
154+
__pycache__
155+
156+
# IOLogger logs
157+
*_log.csv
158+
159+
# Misc.
160+
*~
161+
*.orig
162+
*.rej
163+
*.bak
164+
*.idea
165+
*.i
166+
*.ii
167+
*.swp
168+
tags
169+
*.logs
170+
*.bak
171+
/.vscode
172+
/.editorconfig

Makefile

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
SCRIPTS_DIR := buildroot/share/scripts
2+
CONTAINER_RT_BIN := docker
3+
CONTAINER_RT_OPTS := --rm -v $(PWD):/code -v platformio-cache:/root/.platformio
4+
CONTAINER_IMAGE := marlin-dev
5+
6+
help:
7+
@echo "Tasks for local development:"
8+
@echo "* tests-single-ci: Run a single test from inside the CI"
9+
@echo "* tests-single-local: Run a single test locally"
10+
@echo "* tests-single-local-docker: Run a single test locally, using docker"
11+
@echo "* tests-all-local: Run all tests locally"
12+
@echo "* tests-all-local-docker: Run all tests locally, using docker"
13+
@echo "* setup-local-docker: Build the local docker image"
14+
@echo ""
15+
@echo "Options for testing:"
16+
@echo " TEST_TARGET Set when running tests-single-*, to select the"
17+
@echo " test. If you set it to ALL it will run all "
18+
@echo " tests, but some of them are broken: use "
19+
@echo " tests-all-* instead to run only the ones that "
20+
@echo " run on GitHub CI"
21+
@echo " ONLY_TEST Limit tests to only those that contain this, or"
22+
@echo " the index of the test (1-based)"
23+
@echo " VERBOSE_PLATFORMIO If you want the full PIO output, set any value"
24+
@echo " GIT_RESET_HARD Used by CI: reset all local changes. WARNING:"
25+
@echo " THIS WILL UNDO ANY CHANGES YOU'VE MADE!"
26+
.PHONY: help
27+
28+
tests-single-ci:
29+
export GIT_RESET_HARD=true
30+
$(MAKE) tests-single-local TEST_TARGET=$(TEST_TARGET) PLATFORMIO_BUILD_FLAGS=-DGITHUB_ACTION
31+
.PHONY: tests-single-ci
32+
33+
tests-single-local:
34+
@if ! test -n "$(TEST_TARGET)" ; then echo "***ERROR*** Set TEST_TARGET=<your-module> or use make tests-all-local" ; return 1; fi
35+
export PATH="./buildroot/bin/:./buildroot/tests/:${PATH}" \
36+
&& export VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) \
37+
&& run_tests . $(TEST_TARGET) "$(ONLY_TEST)"
38+
.PHONY: tests-single-local
39+
40+
tests-single-local-docker:
41+
@if ! test -n "$(TEST_TARGET)" ; then echo "***ERROR*** Set TEST_TARGET=<your-module> or use make tests-all-local-docker" ; return 1; fi
42+
@if ! $(CONTAINER_RT_BIN) images -q $(CONTAINER_IMAGE) > /dev/null ; then $(MAKE) setup-local-docker ; fi
43+
$(CONTAINER_RT_BIN) run $(CONTAINER_RT_OPTS) $(CONTAINER_IMAGE) $(MAKE) tests-single-local TEST_TARGET=$(TEST_TARGET) VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) GIT_RESET_HARD=$(GIT_RESET_HARD) ONLY_TEST="$(ONLY_TEST)"
44+
.PHONY: tests-single-local-docker
45+
46+
tests-all-local:
47+
export PATH="./buildroot/bin/:./buildroot/tests/:${PATH}" \
48+
&& export VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) \
49+
&& for TEST_TARGET in $$($(SCRIPTS_DIR)/get_test_targets.py) ; do echo "Running tests for $$TEST_TARGET" ; run_tests . $$TEST_TARGET ; done
50+
.PHONY: tests-all-local
51+
52+
tests-all-local-docker:
53+
@if ! $(CONTAINER_RT_BIN) images -q $(CONTAINER_IMAGE) > /dev/null ; then $(MAKE) setup-local-docker ; fi
54+
$(CONTAINER_RT_BIN) run $(CONTAINER_RT_OPTS) $(CONTAINER_IMAGE) $(MAKE) tests-all-local VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) GIT_RESET_HARD=$(GIT_RESET_HARD)
55+
.PHONY: tests-all-local-docker
56+
57+
setup-local-docker:
58+
$(CONTAINER_RT_BIN) build -t $(CONTAINER_IMAGE) -f docker/Dockerfile .
59+
.PHONY: setup-local-docker

0 commit comments

Comments
 (0)