├── Marlin ├── src │ ├── core │ │ ├── multi_language.cpp │ │ └── millis_t.h │ ├── HAL │ │ ├── TEENSY31_32 │ │ │ ├── pinsDebug.h │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── spi_pins.h │ │ │ ├── watchdog.h │ │ │ └── watchdog.cpp │ │ ├── STM32_F4_F7 │ │ │ ├── README.md │ │ │ ├── STM32F4 │ │ │ │ └── README.md │ │ │ ├── STM32F7 │ │ │ │ └── README.md │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── watchdog.h │ │ │ ├── timers.h │ │ │ ├── spi_pins.h │ │ │ └── pinsDebug.h │ │ ├── STM32 │ │ │ ├── README.md │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── watchdog.h │ │ │ ├── spi_pins.h │ │ │ └── fastio.cpp │ │ ├── STM32F1 │ │ │ ├── README.md │ │ │ ├── msc_sd.h │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── pinsDebug.h │ │ │ └── SoftwareSerial.h │ │ ├── ESP32 │ │ │ ├── ota.h │ │ │ ├── spi_pins.h │ │ │ ├── servotimers.h │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── web.h │ │ │ ├── spiffs.h │ │ │ ├── wifi.h │ │ │ ├── i2s.h │ │ │ ├── FlushableHardwareSerial.cpp │ │ │ ├── watchdog.h │ │ │ ├── watchdog.cpp │ │ │ └── FlushableHardwareSerial.h │ │ ├── LPC1768 │ │ │ ├── win_usb_driver │ │ │ │ └── lpc176x_usb_driver.inf │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── eeprom_api.h │ │ │ ├── watchdog.h │ │ │ ├── u8g │ │ │ │ └── LCD_I2C_routines.h │ │ │ └── usb_serial.cpp │ │ ├── AVR │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ └── watchdog.h │ │ ├── DUE │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ └── watchdog.h │ │ ├── LINUX │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── watchdog.h │ │ │ ├── hardware │ │ │ │ ├── Gpio.cpp │ │ │ │ ├── Clock.cpp │ │ │ │ └── IOLoggerCSV.h │ │ │ └── watchdog.cpp │ │ ├── SAMD51 │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── MarlinSerial_AGCM4.h │ │ │ └── watchdog.h │ │ ├── TEENSY35_36 │ │ │ ├── inc │ │ │ │ ├── Conditionals_LCD.h │ │ │ │ ├── Conditionals_adv.h │ │ │ │ └── Conditionals_post.h │ │ │ ├── spi_pins.h │ │ │ ├── watchdog.h │ │ │ ├── watchdog.cpp │ │ │ └── Servo.h │ │ ├── shared │ │ │ ├── backtrace │ │ │ │ ├── backtrace.h │ │ │ │ ├── unwmemaccess.h │ │ │ │ ├── unwarmmem.h │ │ │ │ └── unwarmbytab.h │ │ │ ├── math_32bit.h │ │ │ ├── eeprom_api.cpp │ │ │ └── HAL_ST7920.h │ │ └── HAL.h │ ├── lcd │ │ ├── extui │ │ │ └── lib │ │ │ │ └── ftdi_eve_touch_ui │ │ │ │ └── ftdi_eve_lib │ │ │ │ └── extended │ │ │ │ └── unicode │ │ │ │ └── font_bitmaps │ │ │ │ ├── romfont_31.pbm │ │ │ │ └── western_char_set_bitmap_31.png │ │ ├── dogm │ │ │ ├── fontdata │ │ │ │ ├── langdata_an.h │ │ │ │ ├── langdata_ca.h │ │ │ │ ├── langdata_da.h │ │ │ │ ├── langdata_de.h │ │ │ │ ├── langdata_en.h │ │ │ │ ├── langdata_es.h │ │ │ │ ├── langdata_eu.h │ │ │ │ ├── langdata_fi.h │ │ │ │ ├── langdata_fr.h │ │ │ │ ├── langdata_gl.h │ │ │ │ ├── langdata_it.h │ │ │ │ ├── langdata_nl.h │ │ │ │ ├── langdata_pt.h │ │ │ │ └── langdata_pt_br.h │ │ │ └── u8g_fontutf8.h │ │ └── menu │ │ │ ├── menu_mmu2.h │ │ │ ├── game │ │ │ ├── maze.h │ │ │ ├── snake.h │ │ │ └── brickout.h │ │ │ └── menu_addon.h │ ├── libs │ │ ├── heatshrink │ │ │ ├── heatshrink_common.h │ │ │ ├── LICENSE │ │ │ └── heatshrink_config.h │ │ ├── crc16.h │ │ └── crc16.cpp │ ├── feature │ │ ├── snmm.h │ │ ├── closedloop.h │ │ ├── baricuda.h │ │ ├── leds │ │ │ ├── tempstat.h │ │ │ ├── blinkm.h │ │ │ └── pca9632.h │ │ ├── digipot │ │ │ └── digipot.h │ │ ├── fanmux.h │ │ ├── solenoid.h │ │ ├── baricuda.cpp │ │ ├── dac │ │ │ ├── dac_dac084s085.h │ │ │ └── stepper_dac.h │ │ ├── caselight.h │ │ ├── power.h │ │ ├── snmm.cpp │ │ └── z_stepper_align.h │ ├── pins │ │ ├── sanguino │ │ │ ├── pins_STB_11.h │ │ │ ├── pins_AZTEEG_X1.h │ │ │ ├── pins_MELZI_MAKR3D.h │ │ │ ├── pins_MELZI.h │ │ │ └── pins_SANGUINOLOLU_12.h │ │ ├── mega │ │ │ ├── pins_PICAOLD.h │ │ │ └── pins_GT2560_REV_A_PLUS.h │ │ ├── ramps │ │ │ ├── pins_MAKEBOARD_MINI.h │ │ │ ├── pins_COPYMASTER_3D.h │ │ │ ├── pins_RUMBA_RAISE3D.h │ │ │ ├── pins_K8200.h │ │ │ ├── pins_MKS_BASE_15.h │ │ │ ├── pins_TRIGORILLA_13.h │ │ │ └── pins_BIQU_KFB_2.h │ │ ├── lpc1769 │ │ │ └── pins_BTT_SKR_V1_4_TURBO.h │ │ └── stm32f1 │ │ │ └── pins_BTT_SKR_MINI_E3_V1_0.h │ ├── gcode │ │ ├── control │ │ │ ├── M400.cpp │ │ │ ├── M997.cpp │ │ │ ├── M85.cpp │ │ │ └── M120_M121.cpp │ │ ├── host │ │ │ ├── M119.cpp │ │ │ ├── M110.cpp │ │ │ ├── M16.cpp │ │ │ └── M876.cpp │ │ ├── units │ │ │ ├── M82_M83.cpp │ │ │ └── G20_G21.cpp │ │ ├── motion │ │ │ └── G80.cpp │ │ ├── lcd │ │ │ ├── M117.cpp │ │ │ └── M250.cpp │ │ ├── sd │ │ │ ├── M928.cpp │ │ │ ├── M26.cpp │ │ │ ├── M21_M22.cpp │ │ │ ├── M20.cpp │ │ │ ├── M524.cpp │ │ │ └── M30.cpp │ │ ├── bedlevel │ │ │ └── ubl │ │ │ │ └── G29.cpp │ │ ├── probe │ │ │ └── G31_G32.cpp │ │ ├── calibrate │ │ │ └── M12.cpp │ │ └── config │ │ │ └── M540.cpp │ ├── sd │ │ ├── usb_flashdrive │ │ │ └── lib-uhs3 │ │ │ │ ├── README.txt │ │ │ │ └── UHS_host │ │ │ │ └── UHS_UNOFFICIAL_IDs.h │ │ └── SdFatUtil.h │ └── module │ │ └── thermistor │ │ ├── thermistor_998.h │ │ ├── thermistor_999.h │ │ ├── thermistor_110.h │ │ ├── thermistor_147.h │ │ └── thermistor_1047.h └── lib │ └── readme.txt ├── data └── www │ ├── marlin-logo.png │ ├── marlin.js │ └── index.html ├── .github ├── FUNDING.yml ├── workflows │ ├── bad-target.md │ ├── check-pr.yml │ └── bump-date.yml ├── pull_request_template.md ├── ISSUE_TEMPLATE │ ├── config.yml │ └── feature_request.md └── issue_template.md ├── config └── README.md ├── .editorconfig └── .gitattributes /Marlin/src/core/multi_language.cpp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /data/www/marlin-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/g3gg0/Marlin/2.0.x/data/www/marlin-logo.png -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/pinsDebug.h: -------------------------------------------------------------------------------- 1 | #error "PINS_DEBUGGING is not yet supported for Teensy 3.1 / 3.2!" 2 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [thinkyhead] 2 | patreon: thinkyhead 3 | custom: ["http://www.thinkyhead.com/donate-to-marlin"] 4 | -------------------------------------------------------------------------------- /config/README.md: -------------------------------------------------------------------------------- 1 | # Where have all the configurations gone? 2 | 3 | ## https://github.com/MarlinFirmware/Configurations/archive/release-2.0.5.zip 4 | -------------------------------------------------------------------------------- /Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_bitmaps/romfont_31.pbm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/g3gg0/Marlin/2.0.x/Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_bitmaps/romfont_31.pbm -------------------------------------------------------------------------------- /Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_bitmaps/western_char_set_bitmap_31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/g3gg0/Marlin/2.0.x/Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_bitmaps/western_char_set_bitmap_31.png -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/README.md: -------------------------------------------------------------------------------- 1 | # This HAL is for... 2 | 3 | - STM32F407 MCU with STM32Generic Arduino core by danieleff. 4 | - STM32F765 board "The Borg" with STM32Generic. 5 | 6 | See the `README.md` files in HAL_STM32F4 and HAL_STM32F7 for the specifics of those hals. 7 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/README.md: -------------------------------------------------------------------------------- 1 | # Generic STM32 HAL based on the stm32duino core 2 | 3 | This HAL is intended to act as the generic STM32 HAL for all STM32 chips (The whole F, H and L family). 4 | 5 | Currently it supports: 6 | * STM32F0xx 7 | * STM32F1xx 8 | * STM32F4xx 9 | * STM32F7xx 10 | 11 | Targeting the official [Arduino STM32 Core](https://github.com/stm32duino/Arduino_Core_STM32). 12 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/README.md: -------------------------------------------------------------------------------- 1 | # STM32F1 2 | 3 | This HAL is for STM32F103 boards used with [Arduino STM32](https://github.com/rogerclarkmelbourne/Arduino_STM32) framework. 4 | 5 | Currently has been tested in Malyan M200 (103CBT6), SKRmini (103RCT6), Chitu 3d (103ZET6), and various 103VET6 boards. 6 | 7 | ### Main developers: 8 | - Victorpv 9 | - xC000005 10 | - thisiskeithb 11 | - tpruvot 12 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/STM32F4/README.md: -------------------------------------------------------------------------------- 1 | # This HAL is for the STM32F407 MCU used with STM32Generic Arduino core by danieleff. 2 | 3 | # Arduino core is located at: 4 | 5 | https://github.com/danieleff/STM32GENERIC 6 | 7 | Unzip it into [Arduino]/hardware folder 8 | 9 | # This HAL is in development. 10 | 11 | This HAL is a modified version of Chris Barr's Picoprint STM32F4 HAL. 12 | 13 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_an.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_ca.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_da.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_de.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_en.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_es.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_eu.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_fi.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_fr.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_gl.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_it.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_nl.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_pt.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [{*.patch,syntax_test_*}] 5 | trim_trailing_whitespace = false 6 | 7 | [{*.c,*.cpp,*.h}] 8 | charset = utf-8 9 | 10 | [{*.c,*.cpp,*.h,Makefile}] 11 | trim_trailing_whitespace = true 12 | insert_final_newline = true 13 | end_of_line = lf 14 | indent_style = space 15 | indent_size = 2 16 | 17 | [{*.py,*.conf,*.sublime-project}] 18 | indent_style = tab 19 | indent_size = 4 20 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/fontdata/langdata_pt_br.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Generated automatically by buildroot/share/fonts/uxggenpages.sh 3 | * Contents will be REPLACED by future processing! 4 | * Use genallfont.sh to generate font data for updated languages. 5 | */ 6 | #include 7 | 8 | #define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } 9 | static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {}; 10 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /.github/workflows/bad-target.md: -------------------------------------------------------------------------------- 1 | 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. 2 | 3 | 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. 4 | 5 | It may help to set your fork's default branch to `bugfix-2.0.x`. 6 | 7 | See [this page](http://marlinfw.org/docs/development/getting_started_pull_requests.html) for full instructions. 8 | -------------------------------------------------------------------------------- /.github/workflows/check-pr.yml: -------------------------------------------------------------------------------- 1 | # 2 | # comment-pr.yml 3 | # Add a comment to any PR directed to a release branch 4 | # 5 | 6 | name: PR Bad Target 7 | 8 | on: 9 | pull_request: 10 | branches: 11 | - 1.0.x 12 | - 1.1.x 13 | - 2.0.x 14 | 15 | jobs: 16 | bad_target: 17 | 18 | name: PR Bad Target 19 | runs-on: ubuntu-latest 20 | 21 | steps: 22 | - uses: actions/checkout@v1 23 | - uses: harupy/comment-on-pr@master 24 | env: 25 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 26 | with: 27 | filename: bad-target.md 28 | -------------------------------------------------------------------------------- /Marlin/src/libs/heatshrink/heatshrink_common.h: -------------------------------------------------------------------------------- 1 | /** 2 | * libs/heatshrink/heatshrink_common.h 3 | */ 4 | #pragma once 5 | 6 | #define HEATSHRINK_AUTHOR "Scott Vokes " 7 | #define HEATSHRINK_URL "https://github.com/atomicobject/heatshrink" 8 | 9 | /* Version 0.4.1 */ 10 | #define HEATSHRINK_VERSION_MAJOR 0 11 | #define HEATSHRINK_VERSION_MINOR 4 12 | #define HEATSHRINK_VERSION_PATCH 1 13 | 14 | #define HEATSHRINK_MIN_WINDOW_BITS 4 15 | #define HEATSHRINK_MAX_WINDOW_BITS 15 16 | 17 | #define HEATSHRINK_MIN_LOOKAHEAD_BITS 3 18 | 19 | #define HEATSHRINK_LITERAL_MARKER 0x01 20 | #define HEATSHRINK_BACKREF_MARKER 0x00 21 | -------------------------------------------------------------------------------- /data/www/marlin.js: -------------------------------------------------------------------------------- 1 | document.addEventListener('DOMContentLoaded', () => { 2 | const ws = new WebSocket(`ws://${location.host}/ws`); 3 | 4 | ws.onmessage = (e) => { 5 | if (typeof e.data === 'string') { 6 | let node = document.createElement('li'); 7 | let text = document.createTextNode(e.data); 8 | node.appendChild(text); 9 | document.getElementById('serial-output').appendChild(node); 10 | } 11 | }; 12 | 13 | document.getElementById('serial-command-form').addEventListener('submit', (e) => { 14 | e.preventDefault(); 15 | 16 | let value = document.getElementById('serial-command').value.trim(); 17 | 18 | if (!value) return; 19 | 20 | ws.send(`${value}\n`); 21 | 22 | document.getElementById('serial-command').value = ''; 23 | }); 24 | }); 25 | -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | ### Requirements 2 | 3 | * Filling out this template is required. Pull Requests without a clear description may be closed at the maintainers' discretion. 4 | 5 | ### Description 6 | 7 | 12 | 13 | ### Benefits 14 | 15 | 16 | 17 | ### Related Issues 18 | 19 | 20 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/msc_sd.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * 4 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 5 | * Copyright (c) 2019 BigTreeTech [https://github.com/bigtreetech] 6 | * 7 | * This program is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * You should have received a copy of the GNU General Public License 13 | * along with this program. If not, see . 14 | * 15 | */ 16 | #pragma once 17 | 18 | #include 19 | 20 | extern USBMassStorage MarlinMSC; 21 | extern USBCompositeSerial MarlinCompositeSerial; 22 | 23 | void MSC_SD_init(); 24 | -------------------------------------------------------------------------------- /Marlin/src/libs/heatshrink/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013-2015, Scott Vokes 2 | All rights reserved. 3 | 4 | Permission to use, copy, modify, and/or distribute this software for any 5 | purpose with or without fee is hereby granted, provided that the above 6 | copyright notice and this permission notice appear in all copies. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: Marlin Documentation 4 | url: http://marlinfw.org/ 5 | about: Lots of documentation on installing and using Marlin. 6 | - name: MarlinFirmware Facebook group 7 | url: https://www.facebook.com/groups/1049718498464482 8 | about: Please ask and answer questions here. 9 | - name: Marlin on Discord 10 | url: https://discord.gg/n5NJ59y 11 | about: Join the Discord server for support and discussion. 12 | - name: Marlin Discussion Forum 13 | url: http://forums.reprap.org/list.php?415 14 | about: A searchable web forum hosted by RepRap dot org. 15 | - name: Marlin Videos on YouTube 16 | url: https://www.youtube.com/results?search_query=marlin+firmware 17 | about: Tutorials and more from Marlin users all around the world. Great for new users! 18 | -------------------------------------------------------------------------------- /Marlin/src/libs/heatshrink/heatshrink_config.h: -------------------------------------------------------------------------------- 1 | /** 2 | * libs/heatshrink/heatshrink_config.h 3 | */ 4 | #pragma once 5 | 6 | // Should functionality assuming dynamic allocation be used? 7 | #ifndef HEATSHRINK_DYNAMIC_ALLOC 8 | //#define HEATSHRINK_DYNAMIC_ALLOC 1 9 | #endif 10 | 11 | #if HEATSHRINK_DYNAMIC_ALLOC 12 | // Optional replacement of malloc/free 13 | #define HEATSHRINK_MALLOC(SZ) malloc(SZ) 14 | #define HEATSHRINK_FREE(P, SZ) free(P) 15 | #else 16 | // Required parameters for static configuration 17 | #define HEATSHRINK_STATIC_INPUT_BUFFER_SIZE 32 18 | #define HEATSHRINK_STATIC_WINDOW_BITS 8 19 | #define HEATSHRINK_STATIC_LOOKAHEAD_BITS 4 20 | #endif 21 | 22 | // Turn on logging for debugging 23 | #define HEATSHRINK_DEBUGGING_LOGS 0 24 | 25 | // Use indexing for faster compression. (This requires additional space.) 26 | #define HEATSHRINK_USE_INDEX 1 27 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/STM32F7/README.md: -------------------------------------------------------------------------------- 1 | # This HAL is for the STM32F765 board "The Borg" used with STM32Generic Arduino core by danieleff. 2 | 3 | # Original core is located at: 4 | 5 | https://github.com/danieleff/STM32GENERIC 6 | 7 | but I haven't committed the changes needed for the Borg there yet, so please use: 8 | 9 | https://github.com/Spawn32/STM32GENERIC 10 | 11 | Unzip it into [Arduino]/hardware folder 12 | 13 | 14 | Download the latest GNU ARM Embedded Toolchain: 15 | 16 | https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads 17 | 18 | (The one in Arduino doesn't support STM32F7). 19 | 20 | Change compiler.path in platform.txt to point to the one you downloaded. 21 | 22 | # This HAL is in development. 23 | # Currently only tested on "The Borg". 24 | 25 | You will also need the latest Arduino 1.9.0-beta or newer. 26 | 27 | This HAL is a modified version of Chris Barr's Picoprint STM32F4 HAL, so shouldn't be to hard to get it to work on a F4. 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/ota.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * Copyright (c) 2016 Bob Cousins bobcousins42@googlemail.com 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #pragma once 20 | 21 | void OTA_init(); 22 | void OTA_handle(); 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/spi_pins.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | * 18 | */ 19 | #pragma once 20 | 21 | #define SS_PIN SDSS 22 | #define SCK_PIN 18 23 | #define MISO_PIN 19 24 | #define MOSI_PIN 23 25 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/win_usb_driver/lpc176x_usb_driver.inf: -------------------------------------------------------------------------------- 1 | [Version] 2 | Signature="$Windows NT$" 3 | Class=Ports 4 | ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} 5 | Provider=%PROVIDER% 6 | DriverVer =04/14/2008, 5.1.2600.5512 7 | 8 | [Manufacturer] 9 | %PROVIDER%=DeviceList,ntamd64 10 | 11 | 12 | [DeviceList] 13 | %DESCRIPTION%=LPC1768USB, USB\VID_1D50&PID_6029&MI_00 14 | 15 | [DeviceList.ntamd64] 16 | %DESCRIPTION%=LPC1768USB, USB\VID_1D50&PID_6029&MI_00 17 | 18 | 19 | [LPC1768USB] 20 | include=mdmcpq.inf 21 | CopyFiles=FakeModemCopyFileSection 22 | AddReg=LowerFilterAddReg,SerialPropPageAddReg 23 | 24 | [LPC1768USB.Services] 25 | include=mdmcpq.inf 26 | AddService=usbser, 0x00000002, LowerFilter_Service_Inst 27 | 28 | [SerialPropPageAddReg] 29 | HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" 30 | 31 | 32 | [Strings] 33 | PROVIDER = "marlinfw.org" 34 | DRIVER.SVC = "Marlin USB Driver" 35 | DESCRIPTION= "Marlin USB Serial" 36 | COMPOSITE = "Marlin USB VCOM" -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/servotimers.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/AVR/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/AVR/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/AVR/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/DUE/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/DUE/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/SAMD51/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/SAMD51/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /.github/workflows/bump-date.yml: -------------------------------------------------------------------------------- 1 | # 2 | # bump-date.yml 3 | # Bump the distribution date once per day 4 | # 5 | 6 | name: Bump Distribution Date 7 | 8 | on: 9 | schedule: 10 | - cron: '0 0 * * *' 11 | 12 | jobs: 13 | bump_date: 14 | 15 | runs-on: ubuntu-latest 16 | 17 | steps: 18 | 19 | - name: Check out bugfix-2.0.x 20 | uses: actions/checkout@v2 21 | with: 22 | ref: bugfix-2.0.x 23 | 24 | - name: Bump Distribution Date 25 | run: | 26 | # Inline Bump Script 27 | [[ "$GITHUB_REPOSITORY" == "MarlinFirmware/Marlin" ]] || exit 0 28 | DIST=$( date +"%Y-%m-%d" ) 29 | eval "sed -E -i 's/(#define +STRING_DISTRIBUTION_DATE) .*$/\1 \"$DIST\"/g' Marlin/src/inc/Version.h" && \ 30 | git config user.name "${GITHUB_ACTOR}" && \ 31 | git config user.email "${GITHUB_ACTOR}@users.noreply.github.com" && \ 32 | git add . && \ 33 | git commit -m "[cron] Bump distribution date ($DIST)" && \ 34 | git push 35 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/inc/Conditionals_LCD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/inc/Conditionals_adv.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/web.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void web_init(); 25 | -------------------------------------------------------------------------------- /Marlin/lib/readme.txt: -------------------------------------------------------------------------------- 1 | 2 | This directory is intended for the project specific (private) libraries. 3 | PlatformIO will compile them to static libraries and link to executable file. 4 | 5 | The source code of each library should be placed in separate directory, like 6 | "lib/private_lib/[here are source files]". 7 | 8 | For example, see how can be organized `Foo` and `Bar` libraries: 9 | 10 | |--lib 11 | | |--Bar 12 | | | |--docs 13 | | | |--examples 14 | | | |--src 15 | | | |- Bar.c 16 | | | |- Bar.h 17 | | |--Foo 18 | | | |- Foo.c 19 | | | |- Foo.h 20 | | |- readme.txt --> THIS FILE 21 | |- platformio.ini 22 | |--src 23 | |- main.c 24 | 25 | Then in `src/main.c` you should use: 26 | 27 | #include 28 | #include 29 | 30 | // rest H/C/CPP code 31 | 32 | PlatformIO will find your libraries automatically, configure preprocessor's 33 | include paths and build them. 34 | 35 | More information about PlatformIO Library Dependency Finder 36 | - http://docs.platformio.org/page/librarymanager/ldf.html 37 | -------------------------------------------------------------------------------- /Marlin/src/feature/snmm.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void select_multiplexed_stepper(const uint8_t e); 25 | -------------------------------------------------------------------------------- /Marlin/src/HAL/SAMD51/MarlinSerial_AGCM4.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * 4 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 5 | * SAMD51 HAL developed by Giuliano Zaro (AKA GMagician) 6 | * 7 | * This program is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program. If not, see . 19 | * 20 | */ 21 | #pragma once 22 | 23 | extern Uart Serial2; 24 | extern Uart Serial3; 25 | extern Uart Serial4; 26 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void watchdog_init(); 25 | void HAL_watchdog_refresh(); 26 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/spiffs.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | extern bool spiffs_initialized; 25 | 26 | void spiffs_init(); 27 | -------------------------------------------------------------------------------- /Marlin/src/feature/closedloop.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void init_closedloop(); 25 | void set_closedloop(const byte val); 26 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/eeprom_api.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "../shared/eeprom_api.h" 25 | 26 | #define FLASH_EEPROM_EMULATION 27 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/backtrace/backtrace.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // Perform a backtrace to the serial port 25 | void backtrace(); 26 | -------------------------------------------------------------------------------- /Marlin/src/feature/baricuda.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | extern uint8_t baricuda_valve_pressure, 25 | baricuda_e_to_p_pressure; 26 | -------------------------------------------------------------------------------- /Marlin/src/libs/crc16.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | void crc16(uint16_t *crc, const void * const data, uint16_t cnt); 27 | -------------------------------------------------------------------------------- /Marlin/src/feature/leds/tempstat.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Marlin general RGB LED support 26 | */ 27 | 28 | void handle_status_leds(); 29 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | extern IWDG_HandleTypeDef hiwdg; 25 | 26 | void watchdog_init(); 27 | void HAL_watchdog_refresh(); 28 | -------------------------------------------------------------------------------- /Marlin/src/feature/digipot/digipot.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void digipot_i2c_set_current(const uint8_t channel, const float current); 25 | void digipot_i2c_init(); 26 | -------------------------------------------------------------------------------- /Marlin/src/lcd/menu/menu_mmu2.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | void menu_mmu2(); 27 | void mmu2_M600(); 28 | uint8_t mmu2_choose_filament(); 29 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define WDT_TIMEOUT 4000000 // 4 second timeout 25 | 26 | void watchdog_init(); 27 | void HAL_watchdog_refresh(); 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/timers.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * 4 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 5 | * Copyright (c) 2016 Bob Cousins bobcousins42@googlemail.com 6 | * Copyright (c) 2017 Victor Perez 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #ifdef STM32F4 25 | #include "STM32F4/timers.h" 26 | #else 27 | #include "STM32F7/timers.h" 28 | #endif 29 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #if USE_FALLBACK_EEPROM && NONE(SDCARD_EEPROM_EMULATION, SRAM_EEPROM_EMULATION) 25 | #define FLASH_EEPROM_EMULATION 26 | #endif 27 | -------------------------------------------------------------------------------- /Marlin/src/HAL/SAMD51/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #if USE_FALLBACK_EEPROM && NONE(SDCARD_EEPROM_EMULATION, SRAM_EEPROM_EMULATION) 25 | #define FLASH_EEPROM_EMULATION 26 | #endif 27 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/spi_pins.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define SCK_PIN 13 25 | #define MISO_PIN 12 26 | #define MOSI_PIN 11 27 | #define SS_PIN 20 //SDSS // A.28, A.29, B.21, C.26, C.29 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/spi_pins.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define SCK_PIN 13 25 | #define MISO_PIN 12 26 | #define MOSI_PIN 11 27 | #define SS_PIN 20 // SDSS // A.28, A.29, B.21, C.26, C.29 28 | -------------------------------------------------------------------------------- /Marlin/src/pins/sanguino/pins_STB_11.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * STB V1.1 pin assignments 26 | */ 27 | 28 | #define BOARD_INFO_NAME "STB V1.1" 29 | 30 | #include "pins_SANGUINOLOLU_12.h" 31 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/wifi.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | extern AsyncWebServer server; 27 | 28 | #define DEFAULT_WIFI_HOSTNAME "marlin" 29 | 30 | void wifi_init(); 31 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/backtrace/unwmemaccess.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * ARM Stack Unwinder, Michael.McTernan.2001@cs.bris.ac.uk 3 | * Updated, adapted and several bug fixes on 2018 by Eduardo José Tagle 4 | * 5 | * This program is PUBLIC DOMAIN. 6 | * This means that there is no copyright and anyone is able to take a copy 7 | * for free and use it as they wish, with or without modifications, and in 8 | * any context, commerically or otherwise. The only limitation is that I 9 | * don't guarantee that the software is fit for any purpose or accept any 10 | * liablity for it's use or misuse - this software is without warranty. 11 | *************************************************************************** 12 | * File Description: Utility functions to access memory 13 | **************************************************************************/ 14 | 15 | #pragma once 16 | 17 | #include "unwarm.h" 18 | #include 19 | 20 | bool UnwReadW(const uint32_t a, uint32_t *v); 21 | bool UnwReadH(const uint32_t a, uint16_t *v); 22 | bool UnwReadB(const uint32_t a, uint8_t *v); 23 | -------------------------------------------------------------------------------- /Marlin/src/pins/sanguino/pins_AZTEEG_X1.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Azteeg X1 pin assignments 26 | */ 27 | 28 | #define BOARD_INFO_NAME "Azteeg X1" 29 | 30 | #include "pins_SANGUINOLOLU_12.h" 31 | -------------------------------------------------------------------------------- /Marlin/src/HAL/DUE/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #if USE_FALLBACK_EEPROM 25 | #undef SRAM_EEPROM_EMULATION 26 | #undef SDCARD_EEPROM_EMULATION 27 | #define FLASH_EEPROM_EMULATION 28 | #endif 29 | -------------------------------------------------------------------------------- /Marlin/src/feature/fanmux.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * feature/fanmux.h - Cooling Fan Multiplexer support functions 26 | */ 27 | 28 | extern void fanmux_switch(const uint8_t e); 29 | extern void fanmux_init(); 30 | -------------------------------------------------------------------------------- /Marlin/src/core/millis_t.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | typedef uint32_t millis_t; 27 | 28 | #define PENDING(NOW,SOON) ((int32_t)(NOW-(SOON))<0) 29 | #define ELAPSED(NOW,SOON) (!PENDING(NOW,SOON)) 30 | -------------------------------------------------------------------------------- /Marlin/src/feature/solenoid.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void enable_solenoid_on_active_extruder(); 25 | void disable_all_solenoids(); 26 | void enable_solenoid(const uint8_t num); 27 | void disable_solenoid(const uint8_t num); 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/hardware/Gpio.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #ifdef __PLAT_LINUX__ 24 | 25 | #include "Gpio.h" 26 | 27 | pin_data Gpio::pin_map[Gpio::pin_count+1] = {}; 28 | IOLogger* Gpio::logger = nullptr; 29 | 30 | #endif // __PLAT_LINUX__ 31 | -------------------------------------------------------------------------------- /Marlin/src/pins/sanguino/pins_MELZI_MAKR3D.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Melzi with ATmega1284 (MaKr3d version) pin assignments 26 | */ 27 | 28 | #define BOARD_INFO_NAME "Melzi (ATmega1284)" 29 | #include "pins_MELZI.h" 30 | -------------------------------------------------------------------------------- /data/www/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Marlin 6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 |
17 |
18 |
    19 | 20 |
    21 |
    22 | 23 | 24 |
    25 |
    26 |
    27 |
    28 | 29 | 30 |
    31 |
    32 | #controls 33 |
    34 |
    35 |
    36 | 37 | 38 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void watchdog_init(); 25 | 26 | inline void HAL_watchdog_refresh() { 27 | // Watchdog refresh sequence 28 | WDOG_REFRESH = 0xA602; 29 | WDOG_REFRESH = 0xB480; 30 | } 31 | -------------------------------------------------------------------------------- /Marlin/src/feature/leds/blinkm.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * blinkm.h - Control a BlinkM over i2c 26 | */ 27 | 28 | struct LEDColor; 29 | typedef LEDColor LEDColor; 30 | 31 | void blinkm_set_led_color(const LEDColor &color); 32 | -------------------------------------------------------------------------------- /Marlin/src/gcode/control/M400.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | #include "../../module/stepper.h" 25 | 26 | /** 27 | * M400: Finish all moves 28 | */ 29 | void GcodeSuite::M400() { 30 | 31 | planner.synchronize(); 32 | 33 | } 34 | -------------------------------------------------------------------------------- /Marlin/src/pins/sanguino/pins_MELZI.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Melzi pin assignments 26 | */ 27 | 28 | #ifndef BOARD_INFO_NAME 29 | #define BOARD_INFO_NAME "Melzi" 30 | #endif 31 | 32 | #include "pins_SANGUINOLOLU_12.h" 33 | -------------------------------------------------------------------------------- /.github/issue_template.md: -------------------------------------------------------------------------------- 1 | # NO SUPPORT REQUESTS PLEASE 2 | 3 | Support Requests posted here will be automatically closed! 4 | 5 | This Issue Queue is for Marlin bug reports and development-related issues, and we prefer not to handle user-support questions here. See https://github.com/MarlinFirmware/Marlin/blob/1.1.x/.github/contributing.md#i-dont-want-to-read-this-whole-thing-i-just-have-a-question. 6 | 7 | For best results getting help with configuration and troubleshooting, please use the following resources: 8 | 9 | - RepRap.org Marlin Forum http://forums.reprap.org/list.php?415 10 | - Tom's 3D Forums https://discuss.toms3d.org/ 11 | - Facebook Group "Marlin Firmware" https://www.facebook.com/groups/1049718498464482/ 12 | - Facebook Group "Marlin Firmware for 3D Printers" https://www.facebook.com/groups/3Dtechtalk/ 13 | - Marlin Configuration https://www.youtube.com/results?search_query=marlin+configuration on YouTube 14 | - Marlin Discord server. Join link: https://discord.gg/n5NJ59y 15 | 16 | After seeking help from the community, if the consensus points to to a bug in Marlin, then you should post a Bug Report at https://github.com/MarlinFirmware/Marlin/issues/new/choose). 17 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define WDT_TIMEOUT 4000000 // 4 second timeout 25 | 26 | void watchdog_init(); 27 | void HAL_watchdog_refresh(); 28 | 29 | bool watchdog_timed_out(); 30 | void watchdog_clear_timeout_flag(); 31 | -------------------------------------------------------------------------------- /Marlin/src/lcd/menu/game/maze.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "types.h" 25 | 26 | typedef struct { pos_t pos; } maze_data_t; 27 | 28 | class MazeGame : MarlinGame { public: static void enter_game(), game_screen(); }; 29 | 30 | extern MazeGame maze; 31 | -------------------------------------------------------------------------------- /Marlin/src/feature/baricuda.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../inc/MarlinConfigPre.h" 24 | 25 | #if ENABLED(BARICUDA) 26 | 27 | #include "baricuda.h" 28 | 29 | uint8_t baricuda_valve_pressure = 0, 30 | baricuda_e_to_p_pressure = 0; 31 | 32 | #endif // BARICUDA 33 | -------------------------------------------------------------------------------- /Marlin/src/gcode/host/M119.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | #include "../../module/endstops.h" 25 | 26 | /** 27 | * M119: Output endstop states to serial output 28 | */ 29 | void GcodeSuite::M119() { 30 | 31 | endstops.report_states(); 32 | 33 | } 34 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/spi_pins.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | * 18 | */ 19 | #pragma once 20 | 21 | /** 22 | * Define SPI Pins: SCK, MISO, MOSI, SS 23 | */ 24 | #ifndef SCK_PIN 25 | #define SCK_PIN PA5 26 | #endif 27 | #ifndef MISO_PIN 28 | #define MISO_PIN PA6 29 | #endif 30 | #ifndef MOSI_PIN 31 | #define MOSI_PIN PA7 32 | #endif 33 | #ifndef SS_PIN 34 | #define SS_PIN PA8 35 | #endif 36 | -------------------------------------------------------------------------------- /Marlin/src/gcode/host/M110.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | #include "../queue.h" // for last_N 25 | 26 | /** 27 | * M110: Set Current Line Number 28 | */ 29 | void GcodeSuite::M110() { 30 | if (parser.seenval('N')) queue.last_N = parser.value_long(); 31 | } 32 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #if ENABLED(EEPROM_SETTINGS) && defined(STM32F7) 25 | #undef USE_WIRED_EEPROM 26 | #undef SRAM_EEPROM_EMULATION 27 | #undef SDCARD_EEPROM_EMULATION 28 | #define FLASH_EEPROM_EMULATION 29 | #endif 30 | -------------------------------------------------------------------------------- /Marlin/src/feature/dac/dac_dac084s085.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | class dac084s085 { 25 | public: 26 | dac084s085(); 27 | static void begin(); 28 | static void setValue(const uint8_t channel, const uint8_t value); 29 | private: 30 | static void cshigh(); 31 | }; 32 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/u8g/LCD_I2C_routines.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | void u8g_i2c_init(const uint8_t clock_options); 25 | //uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos); 26 | uint8_t u8g_i2c_start(uint8_t sla); 27 | uint8_t u8g_i2c_send_byte(uint8_t data); 28 | void u8g_i2c_stop(); 29 | -------------------------------------------------------------------------------- /Marlin/src/gcode/control/M997.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | 25 | #if ENABLED(PLATFORM_M997_SUPPORT) 26 | 27 | /** 28 | * M997: Perform in-application firmware update 29 | */ 30 | void GcodeSuite::M997() { 31 | flashFirmware(parser.intval('S')); 32 | } 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Request a Feature 4 | title: "[FR] (feature request title)" 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | 19 | 20 | ### Description 21 | 22 | 23 | 24 | ### Feature Workflow 25 | 26 | 27 | 28 | 1. [First Action] 29 | 2. [Second Action] 30 | 3. [and so on...] 31 | 32 | #### Additional Information 33 | 34 | * Provide pictures or links that demonstrate a similar feature or concept. 35 | * See [How Can I Contribute](#how-can-i-contribute) for additional guidelines. 36 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/spi_pins.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | * 18 | */ 19 | #pragma once 20 | 21 | /** 22 | * Define SPI Pins: SCK, MISO, MOSI, SS 23 | */ 24 | #ifndef SCK_PIN 25 | #define SCK_PIN PIN_SPI_SCK 26 | #endif 27 | #ifndef MISO_PIN 28 | #define MISO_PIN PIN_SPI_MISO 29 | #endif 30 | #ifndef MOSI_PIN 31 | #define MOSI_PIN PIN_SPI_MOSI 32 | #endif 33 | #ifndef SS_PIN 34 | #define SS_PIN PIN_SPI_SS 35 | #endif 36 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/pinsDebug.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | * 18 | */ 19 | #pragma once 20 | 21 | #ifdef NUM_DIGITAL_PINS // Only in ST's Arduino core (STM32duino, STM32Core) 22 | #include "../STM32/pinsDebug_STM32duino.h" 23 | #elif defined(BOARD_NR_GPIO_PINS) // Only in STM32GENERIC (Maple) 24 | #include "../STM32/pinsDebug_STM32GENERIC.h" 25 | #else 26 | #error "M43 not supported for this board" 27 | #endif 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/backtrace/unwarmmem.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * ARM Stack Unwinder, Michael.McTernan.2001@cs.bris.ac.uk 3 | * Updated, adapted and several bug fixes on 2018 by Eduardo José Tagle 4 | * 5 | * This program is PUBLIC DOMAIN. 6 | * This means that there is no copyright and anyone is able to take a copy 7 | * for free and use it as they wish, with or without modifications, and in 8 | * any context, commerically or otherwise. The only limitation is that I 9 | * don't guarantee that the software is fit for any purpose or accept any 10 | * liablity for it's use or misuse - this software is without warranty. 11 | *************************************************************************** 12 | * File Description: Interface to the memory tracking sub-system. 13 | **************************************************************************/ 14 | 15 | #pragma once 16 | 17 | #include "unwarm.h" 18 | 19 | bool UnwMemHashRead(MemData * const memData, uint32_t addr, uint32_t * const data, bool * const tracked); 20 | bool UnwMemHashWrite(MemData * const memData, uint32_t addr, uint32_t val, bool valValid); 21 | void UnwMemHashGC(UnwState * const state); 22 | -------------------------------------------------------------------------------- /Marlin/src/HAL/HAL.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "platforms.h" 25 | 26 | #include HAL_PATH(.,HAL.h) 27 | 28 | #define HAL_ADC_RANGE _BV(HAL_ADC_RESOLUTION) 29 | 30 | inline void watchdog_refresh() { 31 | #if ENABLED(USE_WATCHDOG) 32 | HAL_watchdog_refresh(); 33 | #endif 34 | } 35 | -------------------------------------------------------------------------------- /Marlin/src/sd/usb_flashdrive/lib-uhs3/README.txt: -------------------------------------------------------------------------------- 1 | ==== USB HOST SHIELD 3.0 LIBRARY ==== 2 | 3 | The lib-uhs3/ folder contains a subset of the files from the USB Host Shield 4 | 3.0 library: 5 | 6 | https://github.com/felis/UHS30 7 | 8 | 9 | ==== LICENSE SUMMARY ==== 10 | 11 | Source Path: Repository: License: 12 | ------------ ----------- -------- 13 | usb_flashdrive/lib github.com/felis/UHS30 GPLv2 or later 14 | 15 | 16 | ==== MARLIN INTEGRATION WORK ==== 17 | 18 | All additional work done to integrate USB into Marlin was performed by 19 | AlephObjects, Inc. and is licensed under the GPLv3. 20 | 21 | This version of UHS3 has been modified for better compatibility with Marlin. 22 | The upstream version of UHS 3.0 runs a frame timer interrupt every 1 ms to 23 | handle device polling. This timer interrupt interferes with Marlin's stepper 24 | IRQ, so the flag USB_HOST_MANUAL_POLL has been added to move the polling to 25 | the idle task. Additional logic was added to disable and enable the frame 26 | IRQ. 27 | 28 | SKIP_PAGE3F and USB_NO_TEST_UNIT_READY were added to work around bugs with 29 | certain devices. 30 | 31 | -- marcio@alephobjects.com 32 | -------------------------------------------------------------------------------- /Marlin/src/pins/mega/pins_PICAOLD.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #define HEATER_0_PIN 9 // E0 24 | #define HEATER_1_PIN 10 // E1 25 | #define FAN_PIN 11 26 | #define FAN2_PIN 12 27 | 28 | #include "pins_PICA.h" 29 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/watchdog.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #ifdef __PLAT_LINUX__ 24 | 25 | #include "../../inc/MarlinConfig.h" 26 | 27 | #if ENABLED(USE_WATCHDOG) 28 | 29 | #include "watchdog.h" 30 | 31 | void watchdog_init() {} 32 | void HAL_watchdog_refresh() {} 33 | 34 | #endif 35 | 36 | #endif // __PLAT_LINUX__ 37 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32_F4_F7/pinsDebug.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | * 18 | */ 19 | #pragma once 20 | 21 | #ifdef NUM_DIGITAL_PINS // Only in ST's Arduino core (STM32duino, STM32Core) 22 | #include "../STM32/pinsDebug_STM32duino.h" 23 | #elif defined(BOARD_NR_GPIO_PINS) // Only in STM32GENERIC (Maple) 24 | #include "../STM32/pinsDebug_STM32GENERIC.h" 25 | #else 26 | #error "M43 Pins Debugging not supported for this board." 27 | #endif 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "HAL.h" 25 | 26 | // Arduino Due core now has watchdog support 27 | 28 | void watchdog_init(); 29 | 30 | inline void HAL_watchdog_refresh() { 31 | // Watchdog refresh sequence 32 | WDOG_REFRESH = 0xA602; 33 | WDOG_REFRESH = 0xB480; 34 | } 35 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/math_32bit.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "../../core/macros.h" 25 | 26 | /** 27 | * Math helper functions for 32 bit CPUs 28 | */ 29 | static FORCE_INLINE uint32_t MultiU32X24toH32(uint32_t longIn1, uint32_t longIn2) { 30 | return ((uint64_t)longIn1 * longIn2 + 0x00800000) >> 24; 31 | } 32 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_MAKEBOARD_MINI.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define BOARD_INFO_NAME "MAKEboard Mini" 25 | 26 | // 27 | // Only 3 Limit Switch plugs on Micromake C1 28 | // 29 | #define X_STOP_PIN 2 30 | #define Y_STOP_PIN 15 31 | #define Z_STOP_PIN 19 32 | 33 | #include "pins_RAMPS.h" 34 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/i2s.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | // current value of the outputs provided over i2s 27 | extern uint32_t i2s_port_data; 28 | 29 | int i2s_init(); 30 | 31 | uint8_t i2s_state(uint8_t pin); 32 | 33 | void i2s_write(uint8_t pin, uint8_t val); 34 | 35 | void i2s_push_sample(); 36 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation 25 | #if ENABLED(EEPROM_SETTINGS) && NONE(USE_WIRED_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION) 26 | #define SDCARD_EEPROM_EMULATION 27 | #endif 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation 25 | #if ENABLED(EEPROM_SETTINGS) && NONE(USE_WIRED_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION) 26 | #define SDCARD_EEPROM_EMULATION 27 | #endif 28 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/inc/Conditionals_post.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation 25 | #if ENABLED(EEPROM_SETTINGS) && NONE(USE_WIRED_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION) 26 | #define SDCARD_EEPROM_EMULATION 27 | #endif 28 | -------------------------------------------------------------------------------- /Marlin/src/gcode/units/M82_M83.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | 25 | /** 26 | * M82: Set E codes absolute (default) 27 | */ 28 | void GcodeSuite::M82() { set_e_absolute(); } 29 | 30 | /** 31 | * M83: Set E codes relative while in Absolute Coordinates (G90) mode 32 | */ 33 | void GcodeSuite::M83() { set_e_relative(); } 34 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/eeprom_api.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * 4 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 5 | * Copyright (c) 2016 Bob Cousins bobcousins42@googlemail.com 6 | * Copyright (c) 2015-2016 Nico Tonnhofer wurstnase.reprap@gmail.com 7 | * Copyright (c) 2016 Victor Perez victor_pv@hotmail.com 8 | * 9 | * This program is free software: you can redistribute it and/or modify 10 | * it under the terms of the GNU General Public License as published by 11 | * the Free Software Foundation, either version 3 of the License, or 12 | * (at your option) any later version. 13 | * 14 | * This program is distributed in the hope that it will be useful, 15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | * GNU General Public License for more details. 18 | * 19 | * You should have received a copy of the GNU General Public License 20 | * along with this program. If not, see . 21 | * 22 | */ 23 | #include "../../inc/MarlinConfigPre.h" 24 | 25 | #if EITHER(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) 26 | 27 | #include "eeprom_api.h" 28 | PersistentStore persistentStore; 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_COPYMASTER_3D.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define BOARD_INFO_NAME "Copymaster 3D RAMPS" 25 | 26 | #define Z_STEP_PIN 47 27 | #define Y_MAX_PIN 14 28 | #define FIL_RUNOUT_PIN 15 29 | #define SD_DETECT_PIN 66 30 | 31 | // 32 | // Import RAMPS 1.4 pins 33 | // 34 | #include "pins_RAMPS.h" 35 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/FlushableHardwareSerial.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "FlushableHardwareSerial.h" 24 | 25 | #ifdef ARDUINO_ARCH_ESP32 26 | 27 | FlushableHardwareSerial::FlushableHardwareSerial(int uart_nr) 28 | : HardwareSerial(uart_nr) 29 | {} 30 | 31 | FlushableHardwareSerial flushableSerial(0); 32 | 33 | #endif // ARDUINO_ARCH_ESP32 34 | -------------------------------------------------------------------------------- /Marlin/src/gcode/motion/G80.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfigPre.h" 24 | 25 | #if ENABLED(GCODE_MOTION_MODES) 26 | 27 | #include "../gcode.h" 28 | 29 | /** 30 | * G80: Cancel current motion mode 31 | */ 32 | void GcodeSuite::G80() { 33 | 34 | parser.cancel_motion_mode(); 35 | 36 | } 37 | 38 | #endif // GCODE_MOTION_MODES 39 | -------------------------------------------------------------------------------- /Marlin/src/feature/caselight.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | extern uint8_t case_light_brightness; 25 | extern bool case_light_on; 26 | extern uint8_t case_light_brightness_sav; // saves brighness info when case_light_on is false 27 | extern bool case_light_arg_flag; // flag to notify if S or P argument type 28 | 29 | void update_case_light(); 30 | -------------------------------------------------------------------------------- /Marlin/src/gcode/lcd/M117.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | #include "../../lcd/ultralcd.h" 25 | 26 | /** 27 | * M117: Set LCD Status Message 28 | */ 29 | void GcodeSuite::M117() { 30 | 31 | if (parser.string_arg && parser.string_arg[0]) 32 | ui.set_status(parser.string_arg); 33 | else 34 | ui.reset_status(); 35 | 36 | } 37 | -------------------------------------------------------------------------------- /Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Geeetech GT2560 Revision A+ board pin assignments 26 | */ 27 | 28 | #define BOARD_INFO_NAME "GT2560 Rev.A+" 29 | 30 | #include "pins_GT2560_REV_A.h" 31 | 32 | #if ENABLED(BLTOUCH) 33 | #define SERVO0_PIN 11 34 | #else 35 | #define SERVO0_PIN 32 36 | #endif 37 | -------------------------------------------------------------------------------- /Marlin/src/gcode/sd/M928.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SDSUPPORT) 26 | 27 | #include "../gcode.h" 28 | #include "../../sd/cardreader.h" 29 | 30 | /** 31 | * M928: Start SD Logging 32 | */ 33 | void GcodeSuite::M928() { 34 | 35 | card.openLogFile(parser.string_arg); 36 | 37 | } 38 | 39 | #endif // SDSUPPORT 40 | -------------------------------------------------------------------------------- /Marlin/src/pins/lpc1769/pins_BTT_SKR_V1_4_TURBO.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define BOARD_INFO_NAME "BIGTREE SKR 1.4 TURBO" 25 | #define SKR_HAS_LPC1769 26 | 27 | // 28 | // EEPROM 29 | // 30 | #define FLASH_EEPROM_EMULATION 31 | //#define SDCARD_EEPROM_EMULATION 32 | 33 | // 34 | // Include SKR 1.4 pins 35 | // 36 | #include "../lpc1768/pins_BTT_SKR_V1_4.h" 37 | -------------------------------------------------------------------------------- /Marlin/src/lcd/menu/menu_addon.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "../lcdprint.h" 25 | #if HAS_GRAPHICAL_LCD 26 | #include "../dogm/ultralcd_DOGM.h" 27 | #endif 28 | 29 | #define MENU_ITEM_ADDON_START(X) do{ \ 30 | if (ui.should_draw() && _menuLineNr == _thisItemNr - 1) { \ 31 | SETCURSOR(X, _lcdLineNr) 32 | 33 | #define MENU_ITEM_ADDON_END() } }while(0) 34 | -------------------------------------------------------------------------------- /Marlin/src/HAL/AVR/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | // Initialize watchdog with a 4 second interrupt time 27 | void watchdog_init(); 28 | 29 | // Reset watchdog. MUST be called at least every 4 seconds after the 30 | // first watchdog_init or AVR will go into emergency procedures. 31 | inline void HAL_watchdog_refresh() { wdt_reset(); } 32 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/hardware/Clock.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #ifdef __PLAT_LINUX__ 24 | 25 | #include "../../../inc/MarlinConfig.h" 26 | #include "Clock.h" 27 | 28 | std::chrono::nanoseconds Clock::startup = std::chrono::high_resolution_clock::now().time_since_epoch(); 29 | uint32_t Clock::frequency = F_CPU; 30 | double Clock::time_multiplier = 1.0; 31 | 32 | #endif // __PLAT_LINUX__ 33 | -------------------------------------------------------------------------------- /Marlin/src/gcode/bedlevel/ubl/G29.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | /** 24 | * G29.cpp - Unified Bed Leveling 25 | */ 26 | 27 | #include "../../../inc/MarlinConfig.h" 28 | 29 | #if ENABLED(AUTO_BED_LEVELING_UBL) 30 | 31 | #include "../../gcode.h" 32 | #include "../../../feature/bedlevel/bedlevel.h" 33 | 34 | void GcodeSuite::G29() { ubl.G29(); } 35 | 36 | #endif // AUTO_BED_LEVELING_UBL 37 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_RUMBA_RAISE3D.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #define BOARD_INFO_NAME "Raise3D Rumba" 25 | #define DEFAULT_MACHINE_NAME "Raise3D N Series" 26 | 27 | // Raise3D uses thermocouples on the standard input pins 28 | #define TEMP_0_PIN 15 // Analog Input 29 | #define TEMP_1_PIN 14 // Analog Input 30 | 31 | #include "pins_RUMBA.h" 32 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_K8200.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * K8200 Arduino Mega with RAMPS v1.3 pin assignments 26 | * Identical to 3DRAG 27 | */ 28 | 29 | #define BOARD_INFO_NAME "Velleman K8200" 30 | #define DEFAULT_MACHINE_NAME "K8200" 31 | #define DEFAULT_SOURCE_CODE_URL "https://github.com/CONSULitAS/Marlin-K8200" 32 | 33 | #include "pins_3DRAG.h" 34 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY31_32/watchdog.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #ifdef __MK20DX256__ 24 | 25 | #include "../../inc/MarlinConfig.h" 26 | 27 | #if ENABLED(USE_WATCHDOG) 28 | 29 | #include "watchdog.h" 30 | 31 | void watchdog_init() { 32 | WDOG_TOVALH = 0; 33 | WDOG_TOVALL = 4000; 34 | WDOG_STCTRLH = WDOG_STCTRLH_WDOGEN; 35 | } 36 | 37 | #endif // USE_WATCHDOG 38 | 39 | #endif // __MK20DX256__ 40 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #ifdef __cplusplus 25 | extern "C" { 26 | #endif 27 | 28 | esp_err_t esp_task_wdt_reset(); 29 | 30 | #ifdef __cplusplus 31 | } 32 | #endif 33 | 34 | // Initialize watchdog with a 4 second interrupt time 35 | void watchdog_init(); 36 | 37 | // Reset watchdog. 38 | inline void HAL_watchdog_refresh() { esp_task_wdt_reset(); } 39 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/backtrace/unwarmbytab.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * ARM Stack Unwinder, Michael.McTernan.2001@cs.bris.ac.uk 3 | * Updated, adapted and several bug fixes on 2018 by Eduardo José Tagle 4 | * 5 | * This program is PUBLIC DOMAIN. 6 | * This means that there is no copyright and anyone is able to take a copy 7 | * for free and use it as they wish, with or without modifications, and in 8 | * any context, commerically or otherwise. The only limitation is that I 9 | * don't guarantee that the software is fit for any purpose or accept any 10 | * liablity for it's use or misuse - this software is without warranty. 11 | *************************************************************************** 12 | * File Description: Interface to the memory tracking sub-system. 13 | **************************************************************************/ 14 | 15 | #pragma once 16 | 17 | #include "unwarm.h" 18 | 19 | typedef struct { 20 | uint32_t vrs[16]; 21 | uint32_t current; /* Address of current byte */ 22 | int remaining; 23 | int byte; 24 | } UnwTabState; 25 | 26 | typedef struct { 27 | uint32_t addr_offset; 28 | uint32_t insn; 29 | } UnwTabEntry; 30 | 31 | UnwResult UnwindByTableStart(UnwindFrame* frame, const UnwindCallbacks *cb, void *data); 32 | -------------------------------------------------------------------------------- /Marlin/src/sd/SdFatUtil.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Arduino SdFat Library 26 | * Copyright (c) 2008 by William Greiman 27 | * 28 | * This file is part of the Arduino Sd2Card Library 29 | */ 30 | 31 | /** 32 | * \file 33 | * \brief Useful utility functions. 34 | */ 35 | 36 | namespace SdFatUtil { 37 | int FreeRam(); 38 | } 39 | 40 | using namespace SdFatUtil; // NOLINT 41 | -------------------------------------------------------------------------------- /Marlin/src/gcode/sd/M26.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SDSUPPORT) 26 | 27 | #include "../gcode.h" 28 | #include "../../sd/cardreader.h" 29 | 30 | /** 31 | * M26: Set SD Card file index 32 | */ 33 | void GcodeSuite::M26() { 34 | if (card.isMounted() && parser.seenval('S')) 35 | card.setIndex(parser.value_long()); 36 | } 37 | 38 | #endif // SDSUPPORT 39 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/watchdog.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #ifdef ARDUINO_ARCH_ESP32 24 | 25 | #include "../../inc/MarlinConfig.h" 26 | 27 | #if ENABLED(USE_WATCHDOG) 28 | 29 | #include "watchdog.h" 30 | 31 | void watchdogSetup() { 32 | // do whatever. don't remove this function. 33 | } 34 | 35 | void watchdog_init() { 36 | // TODO 37 | } 38 | 39 | #endif // USE_WATCHDOG 40 | 41 | #endif // ARDUINO_ARCH_ESP32 42 | -------------------------------------------------------------------------------- /Marlin/src/gcode/sd/M21_M22.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SDSUPPORT) 26 | 27 | #include "../gcode.h" 28 | #include "../../sd/cardreader.h" 29 | 30 | /** 31 | * M21: Init SD Card 32 | */ 33 | void GcodeSuite::M21() { card.mount(); } 34 | 35 | /** 36 | * M22: Release SD Card 37 | */ 38 | void GcodeSuite::M22() { card.release(); } 39 | 40 | #endif // SDSUPPORT 41 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32/fastio.cpp: -------------------------------------------------------------------------------- 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 | * Copyright (c) 2017 Victor Perez 8 | * 9 | * This program is free software: you can redistribute it and/or modify 10 | * it under the terms of the GNU General Public License as published by 11 | * the Free Software Foundation, either version 3 of the License, or 12 | * (at your option) any later version. 13 | * 14 | * This program is distributed in the hope that it will be useful, 15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | * GNU General Public License for more details. 18 | * 19 | * You should have received a copy of the GNU General Public License 20 | * along with this program. If not, see . 21 | * 22 | */ 23 | #if defined(ARDUINO_ARCH_STM32) && !defined(STM32GENERIC) 24 | 25 | #include "../../inc/MarlinConfig.h" 26 | 27 | GPIO_TypeDef* FastIOPortMap[LastPort + 1]; 28 | 29 | void FastIO_init() { 30 | LOOP_L_N(i, NUM_DIGITAL_PINS) 31 | FastIOPortMap[STM_PORT(digitalPin[i])] = get_GPIO_Port(STM_PORT(digitalPin[i])); 32 | } 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /Marlin/src/feature/power.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * power.h - power control 26 | */ 27 | 28 | #include "../core/millis_t.h" 29 | 30 | class Power { 31 | public: 32 | static void check(); 33 | static void power_on(); 34 | static void power_off(); 35 | private: 36 | static millis_t lastPowerOn; 37 | static bool is_power_needed(); 38 | }; 39 | 40 | extern Power powerManager; 41 | -------------------------------------------------------------------------------- /Marlin/src/libs/crc16.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "crc16.h" 24 | 25 | void crc16(uint16_t *crc, const void * const data, uint16_t cnt) { 26 | uint8_t *ptr = (uint8_t *)data; 27 | while (cnt--) { 28 | *crc = (uint16_t)(*crc ^ (uint16_t)(((uint16_t)*ptr++) << 8)); 29 | for (uint8_t i = 0; i < 8; i++) 30 | *crc = (uint16_t)((*crc & 0x8000) ? ((uint16_t)(*crc << 1) ^ 0x1021) : (*crc << 1)); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Marlin/src/feature/leds/pca9632.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Driver for the Philips PCA9632 LED driver. 26 | * Written by Robert Mendon Feb 2017. 27 | */ 28 | 29 | struct LEDColor; 30 | typedef LEDColor LEDColor; 31 | 32 | void pca9632_set_led_color(const LEDColor &color); 33 | 34 | #if ENABLED(PCA9632_BUZZER) 35 | #include 36 | void pca9632_buzz(const long, const uint16_t); 37 | #endif 38 | -------------------------------------------------------------------------------- /Marlin/src/gcode/probe/G31_G32.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(Z_PROBE_SLED) 26 | 27 | #include "../gcode.h" 28 | #include "../../module/probe.h" 29 | 30 | /** 31 | * G31: Deploy the Z probe 32 | */ 33 | void GcodeSuite::G31() { probe.deploy(); } 34 | 35 | /** 36 | * G32: Stow the Z probe 37 | */ 38 | void GcodeSuite::G32() { probe.stow(); } 39 | 40 | #endif // Z_PROBE_SLED 41 | -------------------------------------------------------------------------------- /Marlin/src/gcode/sd/M20.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SDSUPPORT) 26 | 27 | #include "../gcode.h" 28 | #include "../../sd/cardreader.h" 29 | 30 | /** 31 | * M20: List SD card to serial output 32 | */ 33 | void GcodeSuite::M20() { 34 | SERIAL_ECHOLNPGM(STR_BEGIN_FILE_LIST); 35 | card.ls(); 36 | SERIAL_ECHOLNPGM(STR_END_FILE_LIST); 37 | } 38 | 39 | #endif // SDSUPPORT 40 | -------------------------------------------------------------------------------- /Marlin/src/gcode/sd/M524.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SDSUPPORT) 26 | 27 | #include "../gcode.h" 28 | #include "../../sd/cardreader.h" 29 | 30 | /** 31 | * M524: Abort the current SD print job (started with M24) 32 | */ 33 | void GcodeSuite::M524() { 34 | 35 | if (IS_SD_PRINTING()) 36 | card.flag.abort_sd_printing = true; 37 | 38 | } 39 | 40 | #endif // SDSUPPORT 41 | -------------------------------------------------------------------------------- /Marlin/src/module/thermistor/thermistor_998.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // User-defined table 1 25 | // Dummy Thermistor table.. It will ALWAYS read a fixed value. 26 | #ifndef DUMMY_THERMISTOR_998_VALUE 27 | #define DUMMY_THERMISTOR_998_VALUE 25 28 | #endif 29 | 30 | const short temptable_998[][2] PROGMEM = { 31 | { OV( 1), DUMMY_THERMISTOR_998_VALUE }, 32 | { OV(1023), DUMMY_THERMISTOR_998_VALUE } 33 | }; 34 | -------------------------------------------------------------------------------- /Marlin/src/module/thermistor/thermistor_999.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // User-defined table 2 25 | // Dummy Thermistor table.. It will ALWAYS read a fixed value. 26 | #ifndef DUMMY_THERMISTOR_999_VALUE 27 | #define DUMMY_THERMISTOR_999_VALUE 25 28 | #endif 29 | 30 | const short temptable_999[][2] PROGMEM = { 31 | { OV( 1), DUMMY_THERMISTOR_999_VALUE }, 32 | { OV(1023), DUMMY_THERMISTOR_999_VALUE } 33 | }; 34 | -------------------------------------------------------------------------------- /Marlin/src/gcode/host/M16.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfigPre.h" 24 | 25 | #if ENABLED(EXPECTED_PRINTER_CHECK) 26 | 27 | #include "../gcode.h" 28 | #include "../../MarlinCore.h" 29 | 30 | /** 31 | * M16: Expected Printer Check 32 | */ 33 | void GcodeSuite::M16() { 34 | 35 | if (strcmp_P(parser.string_arg, PSTR(MACHINE_NAME))) 36 | kill(GET_TEXT(MSG_EXPECTED_PRINTER)); 37 | 38 | } 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /Marlin/src/gcode/sd/M30.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SDSUPPORT) 26 | 27 | #include "../gcode.h" 28 | #include "../../sd/cardreader.h" 29 | 30 | /** 31 | * M30 : Delete SD Card file 32 | */ 33 | void GcodeSuite::M30() { 34 | if (card.isMounted()) { 35 | card.closefile(); 36 | card.removeFile(parser.string_arg); 37 | } 38 | } 39 | 40 | #endif // SDSUPPORT 41 | -------------------------------------------------------------------------------- /Marlin/src/sd/usb_flashdrive/lib-uhs3/UHS_host/UHS_UNOFFICIAL_IDs.h: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015-2016 Andrew J. Kroll 2 | and 3 | Copyright (C) 2011 Circuits At Home, LTD. All rights reserved. 4 | 5 | This program is free software; you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation; either version 2 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program; if not, write to the Free Software 17 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 | 19 | Contact information 20 | ------------------- 21 | 22 | Circuits At Home, LTD 23 | Web : http://www.circuitsathome.com 24 | e-mail : support@circuitsathome.com 25 | */ 26 | #ifndef _UHS_UNOFFICIAL_IDs_h 27 | #define _UHS_UNOFFICIAL_IDs_h 28 | 29 | // Bogus unofficial and unregistered VIDs from cloners to be listed here. 30 | 31 | #define UHS_VID_UNOFFICIAL_JOYTECH 0x162EU // For unofficial Joytech controllers 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /Marlin/src/HAL/DUE/watchdog.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // Arduino Due core now has watchdog support 25 | 26 | #include "HAL.h" 27 | 28 | // Initialize watchdog with a 4 second interrupt time 29 | void watchdog_init(); 30 | 31 | // Reset watchdog. MUST be called at least every 4 seconds after the 32 | // first watchdog_init or AVR will go into emergency procedures. 33 | inline void HAL_watchdog_refresh() { watchdogReset(); } 34 | -------------------------------------------------------------------------------- /Marlin/src/gcode/calibrate/M12.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #include "../../inc/MarlinConfigPre.h" 23 | 24 | #if ENABLED(EXTERNAL_CLOSED_LOOP_CONTROLLER) 25 | 26 | #include "../gcode.h" 27 | #include "../../module/planner.h" 28 | #include "../../feature/closedloop.h" 29 | 30 | void GcodeSuite::M12() { 31 | planner.synchronize(); 32 | if (parser.seenval('S')) 33 | set_closedloop(parser.value_int()); // Force a CLC set 34 | } 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /Marlin/src/module/thermistor/thermistor_110.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // Pt100 with 1k0 pullup 25 | const short temptable_110[][2] PROGMEM = { 26 | // only a few values are needed as the curve is very flat 27 | PtLine( 0, 100, 1000), 28 | PtLine( 50, 100, 1000), 29 | PtLine(100, 100, 1000), 30 | PtLine(150, 100, 1000), 31 | PtLine(200, 100, 1000), 32 | PtLine(250, 100, 1000), 33 | PtLine(300, 100, 1000) 34 | }; 35 | -------------------------------------------------------------------------------- /Marlin/src/module/thermistor/thermistor_147.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // Pt100 with 4k7 pullup 25 | const short temptable_147[][2] PROGMEM = { 26 | // only a few values are needed as the curve is very flat 27 | PtLine( 0, 100, 4700), 28 | PtLine( 50, 100, 4700), 29 | PtLine(100, 100, 4700), 30 | PtLine(150, 100, 4700), 31 | PtLine(200, 100, 4700), 32 | PtLine(250, 100, 4700), 33 | PtLine(300, 100, 4700) 34 | }; 35 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/watchdog.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #if defined(__MK64FX512__) || defined(__MK66FX1M0__) 24 | 25 | #include "../../inc/MarlinConfig.h" 26 | 27 | #if ENABLED(USE_WATCHDOG) 28 | 29 | #include "watchdog.h" 30 | 31 | void watchdog_init() { 32 | WDOG_TOVALH = 0; 33 | WDOG_TOVALL = 4000; 34 | WDOG_STCTRLH = WDOG_STCTRLH_WDOGEN; 35 | } 36 | 37 | #endif // USE_WATCHDOG 38 | 39 | #endif // __MK64FX512__ || __MK66FX1M0__ 40 | -------------------------------------------------------------------------------- /Marlin/src/gcode/control/M85.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | #include "../../MarlinCore.h" // for max_inactive_time 25 | 26 | /** 27 | * M85: Set inactivity shutdown timer with parameter S. To disable set zero (default) 28 | */ 29 | void GcodeSuite::M85() { 30 | 31 | if (parser.seen('S')) { 32 | reset_stepper_timeout(); 33 | max_inactive_time = parser.value_millis_from_seconds(); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /Marlin/src/HAL/STM32F1/SoftwareSerial.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | * 18 | */ 19 | #pragma once 20 | 21 | #include 22 | 23 | #ifndef HAVE_SW_SERIAL 24 | #define SW_SERIAL_PLACEHOLDER 1 25 | #endif 26 | 27 | class SoftwareSerial { 28 | public: 29 | SoftwareSerial(int8_t RX_pin, int8_t TX_pin); 30 | 31 | void begin(const uint32_t baudrate); 32 | 33 | bool available(); 34 | 35 | uint8_t read(); 36 | uint16_t write(uint8_t byte); 37 | void flush(); 38 | 39 | void listen(); 40 | void stopListening(); 41 | 42 | protected: 43 | bool listening; 44 | }; 45 | -------------------------------------------------------------------------------- /Marlin/src/gcode/control/M120_M121.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../gcode.h" 24 | #include "../../module/endstops.h" 25 | 26 | /** 27 | * M120: Enable endstops and set non-homing endstop state to "enabled" 28 | */ 29 | void GcodeSuite::M120() { endstops.enable_globally(true); } 30 | 31 | /** 32 | * M121: Disable endstops and set non-homing endstop state to "disabled" 33 | */ 34 | void GcodeSuite::M121() { endstops.enable_globally(false); } 35 | -------------------------------------------------------------------------------- /Marlin/src/module/thermistor/thermistor_1047.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | // Pt1000 with 4k7 pullup 25 | const short temptable_1047[][2] PROGMEM = { 26 | // only a few values are needed as the curve is very flat 27 | PtLine( 0, 1000, 4700), 28 | PtLine( 50, 1000, 4700), 29 | PtLine(100, 1000, 4700), 30 | PtLine(150, 1000, 4700), 31 | PtLine(200, 1000, 4700), 32 | PtLine(250, 1000, 4700), 33 | PtLine(300, 1000, 4700) 34 | }; 35 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_MKS_BASE_15.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * MKS BASE v1.5 with A4982 stepper drivers and digital micro-stepping 26 | */ 27 | 28 | #if HOTENDS > 2 || E_STEPPERS > 2 29 | #error "MKS BASE 1.5 only supports up to 2 hotends / E-steppers. Comment out this line to continue." 30 | #endif 31 | 32 | #define BOARD_INFO_NAME "MKS BASE 1.5" 33 | #define MKS_BASE_VERSION 15 34 | 35 | #include "pins_MKS_BASE_common.h" 36 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LPC1768/usb_serial.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #ifdef TARGET_LPC1768 24 | 25 | #include "../../inc/MarlinConfigPre.h" 26 | 27 | #if ENABLED(EMERGENCY_PARSER) 28 | 29 | #include "../../feature/e_parser.h" 30 | EmergencyParser::State emergency_state; 31 | bool CDC_RecvCallback(const char buffer) { 32 | emergency_parser.update(emergency_state, buffer); 33 | return true; 34 | } 35 | 36 | #endif // EMERGENCY_PARSER 37 | #endif // TARGET_LPC1768 38 | -------------------------------------------------------------------------------- /Marlin/src/gcode/lcd/M250.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if HAS_LCD_CONTRAST 26 | 27 | #include "../gcode.h" 28 | #include "../../lcd/ultralcd.h" 29 | 30 | /** 31 | * M250: Read and optionally set the LCD contrast 32 | */ 33 | void GcodeSuite::M250() { 34 | if (parser.seen('C')) ui.set_contrast(parser.value_int()); 35 | SERIAL_ECHOLNPAIR("LCD Contrast: ", ui.contrast); 36 | } 37 | 38 | #endif // HAS_LCD_CONTRAST 39 | -------------------------------------------------------------------------------- /Marlin/src/lcd/menu/game/snake.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "types.h" 25 | 26 | typedef struct { 27 | int8_t snake_dir, // NESW 28 | foodx, foody, 29 | food_cnt, 30 | old_encoder; 31 | pos_t snake_tail[50]; 32 | fixed_t snakex, snakey; 33 | uint8_t head_ind; 34 | } snake_data_t; 35 | 36 | class SnakeGame : MarlinGame { public: static void enter_game(), game_screen(); }; 37 | 38 | extern SnakeGame snake; 39 | -------------------------------------------------------------------------------- /Marlin/src/HAL/LINUX/hardware/IOLoggerCSV.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | #include 26 | #include 27 | #include "Gpio.h" 28 | 29 | class IOLoggerCSV: public IOLogger { 30 | public: 31 | IOLoggerCSV(std::string filename); 32 | virtual ~IOLoggerCSV(); 33 | void flush(); 34 | void log(GpioEvent ev); 35 | 36 | private: 37 | std::ofstream file; 38 | std::list events; 39 | std::mutex vector_lock; 40 | }; 41 | -------------------------------------------------------------------------------- /Marlin/src/HAL/shared/HAL_ST7920.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * HAL/ST7920.h 26 | * For the HALs that provide direct access to the ST7920 display 27 | * (bypassing U8G), it will allow the LIGHTWEIGHT_UI to operate. 28 | */ 29 | 30 | #if HAS_GRAPHICAL_LCD && ENABLED(LIGHTWEIGHT_UI) 31 | void ST7920_cs(); 32 | void ST7920_ncs(); 33 | void ST7920_set_cmd(); 34 | void ST7920_set_dat(); 35 | void ST7920_write_byte(const uint8_t data); 36 | #endif 37 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_TRIGORILLA_13.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Arduino Mega with RAMPS v1.3 for Anycubic 26 | */ 27 | 28 | #define BOARD_INFO_NAME "Anycubic RAMPS 1.3" 29 | 30 | #define IS_RAMPS_EFB 31 | #define RAMPS_D9_PIN 44 32 | #define FAN2_PIN 9 33 | #define ORIG_E0_AUTO_FAN_PIN 9 34 | 35 | #include "pins_RAMPS_13.h" 36 | 37 | #undef E1_STEP_PIN 38 | #undef E1_DIR_PIN 39 | #undef E1_ENABLE_PIN 40 | #undef E1_CS_PIN 41 | -------------------------------------------------------------------------------- /Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_0.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "pins_BTT_SKR_MINI_E3.h" 25 | 26 | #define BOARD_INFO_NAME "BIGTREE SKR Mini E3" 27 | 28 | /** 29 | * TMC220x stepper drivers 30 | * Hardware serial communication ports. 31 | */ 32 | #if HAS_TMC_UART 33 | #define X_HARDWARE_SERIAL Serial4 34 | #define Y_HARDWARE_SERIAL Serial4 35 | #define Z_HARDWARE_SERIAL Serial4 36 | #define E0_HARDWARE_SERIAL Serial4 37 | #endif 38 | -------------------------------------------------------------------------------- /Marlin/src/HAL/SAMD51/watchdog.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Marlin 3D Printer Firmware 3 | * 4 | * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] 5 | * SAMD51 HAL developed by Giuliano Zaro (AKA GMagician) 6 | * 7 | * This program is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program. If not, see . 19 | * 20 | */ 21 | #pragma once 22 | 23 | // Initialize watchdog with a 4 second interrupt time 24 | void watchdog_init(); 25 | 26 | // Reset watchdog. MUST be called at least every 4 seconds after the 27 | // first watchdog_init or SAMD will go into emergency procedures. 28 | inline void HAL_watchdog_refresh() { 29 | SYNC(WDT->SYNCBUSY.bit.CLEAR); // Test first if previous is 'ongoing' to save time waiting for command execution 30 | WDT->CLEAR.reg = WDT_CLEAR_CLEAR_KEY; 31 | } 32 | -------------------------------------------------------------------------------- /Marlin/src/feature/dac/stepper_dac.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * stepper_dac.h - To set stepper current via DAC 26 | */ 27 | 28 | #include "dac_mcp4728.h" 29 | 30 | int dac_init(); 31 | void dac_current_percent(uint8_t channel, float val); 32 | void dac_current_raw(uint8_t channel, uint16_t val); 33 | void dac_print_values(); 34 | void dac_commit_eeprom(); 35 | uint8_t dac_current_get_percent(AxisEnum axis); 36 | void dac_current_set_percents(xyze_uint8_t &pct); 37 | -------------------------------------------------------------------------------- /Marlin/src/gcode/units/G20_G21.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(INCH_MODE_SUPPORT) 26 | 27 | #include "../gcode.h" 28 | 29 | /** 30 | * G20: Set input mode to inches 31 | */ 32 | void GcodeSuite::G20() { parser.set_input_linear_units(LINEARUNIT_INCH); } 33 | 34 | /** 35 | * G21: Set input mode to millimeters 36 | */ 37 | void GcodeSuite::G21() { parser.set_input_linear_units(LINEARUNIT_MM); } 38 | 39 | #endif // INCH_MODE_SUPPORT 40 | -------------------------------------------------------------------------------- /Marlin/src/pins/sanguino/pins_SANGUINOLOLU_12.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * Sanguinololu V1.2 pin assignments 26 | * 27 | * Applies to the following boards: 28 | * 29 | * AZTEEG_X1 30 | * MELZI 31 | * MELZI_CREALITY 32 | * MELZI_MAKR3D 33 | * SANGUINOLOLU_12 34 | * STB_11 35 | */ 36 | 37 | #ifndef BOARD_INFO_NAME 38 | #define BOARD_INFO_NAME "Sanguinololu 1.2" 39 | #endif 40 | 41 | #define SANGUINOLOLU_V_1_2 42 | #include "pins_SANGUINOLOLU_11.h" 43 | -------------------------------------------------------------------------------- /Marlin/src/HAL/ESP32/FlushableHardwareSerial.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #ifdef ARDUINO_ARCH_ESP32 25 | 26 | #include 27 | 28 | class FlushableHardwareSerial : public HardwareSerial { 29 | public: 30 | FlushableHardwareSerial(int uart_nr); 31 | 32 | inline void flushTX() { /* No need to flush the hardware serial, but defined here for compatibility. */ } 33 | }; 34 | 35 | extern FlushableHardwareSerial flushableSerial; 36 | 37 | #endif // ARDUINO_ARCH_ESP32 38 | -------------------------------------------------------------------------------- /Marlin/src/gcode/config/M540.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(SD_ABORT_ON_ENDSTOP_HIT) 26 | 27 | #include "../gcode.h" 28 | #include "../../module/stepper.h" 29 | 30 | /** 31 | * M540: Set whether SD card print should abort on endstop hit (M540 S<0|1>) 32 | */ 33 | void GcodeSuite::M540() { 34 | 35 | if (parser.seen('S')) 36 | planner.abort_on_endstop_hit = parser.value_bool(); 37 | 38 | } 39 | 40 | #endif // SD_ABORT_ON_ENDSTOP_HIT 41 | -------------------------------------------------------------------------------- /Marlin/src/lcd/menu/game/brickout.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include "types.h" 25 | 26 | #define BRICK_ROWS 4 27 | #define BRICK_COLS 16 28 | 29 | typedef struct { 30 | uint8_t balls_left, brick_count; 31 | uint16_t bricks[BRICK_ROWS]; 32 | int8_t paddle_x, hit_dir; 33 | fixed_t ballx, bally, ballh, ballv; 34 | } brickout_data_t; 35 | 36 | class BrickoutGame : MarlinGame { public: static void enter_game(), game_screen(); }; 37 | 38 | extern BrickoutGame brickout; 39 | -------------------------------------------------------------------------------- /Marlin/src/feature/snmm.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | 23 | #include "../inc/MarlinConfig.h" 24 | 25 | #if ENABLED(MK2_MULTIPLEXER) 26 | 27 | #include "../module/stepper.h" 28 | 29 | void select_multiplexed_stepper(const uint8_t e) { 30 | planner.synchronize(); 31 | disable_e_steppers(); 32 | WRITE(E_MUX0_PIN, TEST(e, 0) ? HIGH : LOW); 33 | WRITE(E_MUX1_PIN, TEST(e, 1) ? HIGH : LOW); 34 | WRITE(E_MUX2_PIN, TEST(e, 2) ? HIGH : LOW); 35 | safe_delay(100); 36 | } 37 | 38 | #endif // MK2_MULTIPLEXER 39 | -------------------------------------------------------------------------------- /Marlin/src/lcd/dogm/u8g_fontutf8.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file fontutf8.h 3 | * @brief font api for u8g lib 4 | * @author Yunhui Fu (yhfudev@gmail.com) 5 | * @version 1.0 6 | * @date 2015-02-19 7 | * @copyright GPL/BSD 8 | */ 9 | #pragma once 10 | 11 | #include 12 | #include "../fontutils.h" 13 | 14 | // the macro to indicate a UTF-8 string 15 | // You should to save the C/C++ source in UTF-8 encoding! 16 | // Once you change your UTF-8 strings, you need to call the script uxggenpages.sh to create the font data file fontutf8-data.h 17 | #define _UxGT(a) a 18 | 19 | typedef struct _uxg_fontinfo_t { 20 | uint16_t page; 21 | uint8_t begin; 22 | uint8_t end; 23 | uint16_t size; 24 | const u8g_fntpgm_uint8_t *fntdata; 25 | } uxg_fontinfo_t; 26 | 27 | int uxg_SetUtf8Fonts(const uxg_fontinfo_t * fntinfo, int number); // fntinfo is type of PROGMEM 28 | 29 | unsigned int uxg_DrawWchar(u8g_t *pu8g, unsigned int x, unsigned int y, wchar_t ch, pixel_len_t max_length); 30 | 31 | unsigned int uxg_DrawUtf8Str(u8g_t *pu8g, unsigned int x, unsigned int y, const char *utf8_msg, pixel_len_t max_length); 32 | unsigned int uxg_DrawUtf8StrP(u8g_t *pu8g, unsigned int x, unsigned int y, PGM_P utf8_msg, pixel_len_t max_length); 33 | 34 | int uxg_GetUtf8StrPixelWidth(u8g_t *pu8g, const char *utf8_msg); 35 | int uxg_GetUtf8StrPixelWidthP(u8g_t *pu8g, PGM_P utf8_msg); 36 | 37 | #define uxg_GetFont(puxg) ((puxg)->font) 38 | -------------------------------------------------------------------------------- /Marlin/src/pins/ramps/pins_BIQU_KFB_2.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * KFB 2.0 – Arduino Mega2560 with RAMPS v1.4 pin assignments 26 | */ 27 | 28 | #if HOTENDS > 2 || E_STEPPERS > 2 29 | #error "KFB 2.0 supports up to 2 hotends / E-steppers. Comment out this line to continue." 30 | #endif 31 | 32 | #define BOARD_INFO_NAME "KFB 2.0" 33 | 34 | // 35 | // Heaters / Fans 36 | // 37 | // Power outputs BEEF or BEFF 38 | #define MOSFET_D_PIN 7 39 | 40 | #include "pins_RAMPS.h" 41 | -------------------------------------------------------------------------------- /Marlin/src/feature/z_stepper_align.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | /** 25 | * feature/z_stepper_align.h 26 | */ 27 | 28 | #include "../inc/MarlinConfig.h" 29 | 30 | class ZStepperAlign { 31 | public: 32 | static xy_pos_t xy[NUM_Z_STEPPER_DRIVERS]; 33 | 34 | #if ENABLED(Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS) 35 | static xy_pos_t stepper_xy[NUM_Z_STEPPER_DRIVERS]; 36 | #endif 37 | 38 | static void reset_to_default(); 39 | }; 40 | 41 | extern ZStepperAlign z_stepper_align; 42 | -------------------------------------------------------------------------------- /Marlin/src/gcode/host/M876.cpp: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #include "../../inc/MarlinConfig.h" 23 | 24 | #if ENABLED(HOST_PROMPT_SUPPORT) && DISABLED(EMERGENCY_PARSER) 25 | 26 | #include "../../feature/host_actions.h" 27 | #include "../gcode.h" 28 | #include "../../MarlinCore.h" 29 | 30 | /** 31 | * M876: Handle Prompt Response 32 | */ 33 | void GcodeSuite::M876() { 34 | 35 | if (parser.seenval('S')) host_response_handler((uint8_t)parser.value_int()); 36 | 37 | } 38 | 39 | #endif // HOST_PROMPT_SUPPORT && !EMERGENCY_PARSER 40 | -------------------------------------------------------------------------------- /Marlin/src/HAL/TEENSY35_36/Servo.h: -------------------------------------------------------------------------------- 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 . 20 | * 21 | */ 22 | #pragma once 23 | 24 | #include 25 | 26 | // Inherit and expand on core Servo library 27 | class libServo : public Servo { 28 | public: 29 | int8_t attach(const int pin); 30 | int8_t attach(const int pin, const int min, const int max); 31 | void move(const int value); 32 | private: 33 | typedef Servo super; 34 | uint16_t min_ticks; 35 | uint16_t max_ticks; 36 | uint8_t servoIndex; // Index into the channel data for this servo 37 | }; 38 | --------------------------------------------------------------------------------