1375 Commits

Author SHA1 Message Date
f7eac586fb Merge tag '2.0.7.2' into master 2020-11-17 18:53:19 -06:00
88a2ac92d5 Marlin 2.0.7.2 2020-10-21 18:16:38 -05:00
3ccb3801f2 Fix SAMD Serial name macro (#19765) 2020-10-21 18:16:38 -05:00
cc7fbabc96 Fix HAL/STM32 FastIO for analog pins (#19735) 2020-10-21 18:16:38 -05:00
28a9708ddb Don't define IS_ULTIPANEL empty 2020-10-21 18:16:00 -05:00
d896dedf9b Add NUCLEO-F767ZI dev board (#19373)
Co-authored-by: Lorenzo Delana <lorenzo.delana@gmail.com>
2020-10-16 16:42:39 -05:00
00709017e2 If needed, home before G34 (#19713) 2020-10-16 16:42:39 -05:00
b7d9b05952 TFT followup fixes (#19710) 2020-10-16 16:42:37 -05:00
f7f1224941 Watchdog Refresh for LVGL Asset Load (#19724) 2020-10-16 16:42:15 -05:00
fd8d83b7c8 Fix mega2560ext environment (#19730) 2020-10-16 16:42:15 -05:00
52fc0b896d [cron] Bump distribution date (2020-10-15) 2020-10-16 16:42:15 -05:00
ba045d6852 [cron] Bump distribution date (2020-10-14) 2020-10-16 16:42:15 -05:00
54bdcb4691 Fix SET_SOFT_ENDSTOP_LOOSE w/out soft endstops (#19734) 2020-10-16 16:42:15 -05:00
2a2666326b Simple bool in soft_endstops_t 2020-10-16 16:42:15 -05:00
3bba5d55bf [cron] Bump distribution date (2020-10-13) 2020-10-16 16:42:15 -05:00
5d07d83e78 [cron] Bump distribution date (2020-10-12) 2020-10-16 16:40:25 -05:00
37f97bc013 Fix various errors, warnings in example config builds (#19686)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:40:14 -05:00
6d31bbe2bf [cron] Bump distribution date (2020-10-11) 2020-10-16 16:39:55 -05:00
e2e1776a14 Restore correct STM32 port-bits code (#19678) 2020-10-16 16:39:55 -05:00
bd196e7efc Fixes for TFTGLCD Panel, FastIO (#19614) 2020-10-16 16:39:55 -05:00
dffe7b9072 Add loose soft endstop state, apply to UBL fine-tune (#19681)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
2b326ebc84 Add D100 Watchdog Test (#19697) 2020-10-16 16:39:55 -05:00
f4ff6a673f Allow MAX31865 resistance values configuration (#19695) 2020-10-16 16:39:55 -05:00
cc915a25ed Add REPORT_TRAMMING_MM option (#19682)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
600870f22b Fix motion compile w/out probe-oriented settings (#19684) 2020-10-16 16:39:55 -05:00
04882e2f34 Fix I2C_ADDRESS sign warning (#19685) 2020-10-16 16:39:55 -05:00
c6cf3da276 Fix various errors, warnings in example config builds (#19686)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
8a5c3782b8 Fix at90usb1286 build (#19687)
* Skip check for USBCON during dependency detection
* Ignore incompatible Teensy_ADC library, which requires Teensy >= 3
* Add IS_AT90USB

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
beb17d8855 Digipots refactor / cleanup (#19690) 2020-10-16 16:39:55 -05:00
4ee717f7c4 Save PLR on resume from pause (#19676)
Co-Authored-By: shahab <32130261+SHBnik@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
e680196c59 Restore correct STM32 port-bits code (#19678) 2020-10-16 16:39:55 -05:00
ce92abfe47 Fixes for TFTGLCD Panel, FastIO (#19614) 2020-10-16 16:39:55 -05:00
50410aaeaa Fix UTF8 handling for Color UI (#19708) 2020-10-16 16:39:55 -05:00
35c40bc376 Implement wait_for_user for Color UI (#19694) 2020-10-16 16:39:55 -05:00
aae644c507 Option to prevent (extra) Watchdog init on STM32 (#19693) 2020-10-16 16:39:55 -05:00
ce830f8a71 Fix screen click reading too often (#19696)
Co-authored-by: andreibobirica <39415547+andreibobirica@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
d3d423a322 Sanity-check mutually-exclusive G34 features (#19706) 2020-10-16 16:39:55 -05:00
8b060a3902 G34 Mechanical Gantry Calibration (like Prusa M915) (#18972)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:55 -05:00
faae900747 TFT Refactoring (#19192)
* split tft folder in two: tft for color ui; tft_io for shared tft code

* after the files got moved, now the code was moved to the right place

* classic ui using TFT IO init lcd codes

* feature to compile tft_io when enabled

* compiling fix

* lvgl spi tft working with tft io init codes

* there is no need for separeted fsmc and spi class in lvgl anymore, as tft io handle everything

* remove debug

* base for TFT rotation and mirroring API, and ILI9488 support

* ST7796S rotate and mirror support

* ST7789V rotate and mirror support

* ST7735 rotate and mirror support

* ILI9341 rotate and mirror support

* ILI9328 rotate and mirror support

* R61505 rotate and mirror support

* MKS TFT definitions

* more configs for mks tfts

* update config

* naming typo

* to configure the user interface

* ANYCUBIC_TFT35

* tft configs

* support for SSD1963

* tft display types

* updated conditionals lcd; first board fully working with the new code - all 3 ui!

* compatiblity

* changed name

* move classic ui file name

* rename TURN -> ROTATE

* GRAPHICAL_TFT_ROTATE_180 deprecated

* first fsmc board fully working - chitu v5

* mks robin nano v1.2 + tft 35 ok!

* right pin name

* anycubic tft tested in a TRIGORILLA_PRO

* chitu v6

* nano 32 tft orientation

* mks tft43

* mks tft43 rotation

* fixed LONGER LK tft setup

* GRAPHICAL_TFT_UPSCALE defined by the display type

* better offsets defaults

* Update Configuration.h

* Update tft_fsmc.cpp

* Update Conditionals_LCD.h

* Tweak comments

* update nano tests

* Revert "update nano tests"

This reverts commit a071ebbfad30e28855a4a5695ec8a726542a1a65.

* default tft

* outdated comments

* to not break non-vscode builds

* upscale tft 35

* support tft 180 rotation for color ui

* Each TFT Driver is responsible for its default color mode.

* use auto detect in mks displays, because some of them could be shipped with diferent drivers

* extra s

* unused code

* wrong -1

* missing mirror options

* Smaller regex pattern

* Comment updates

* Clean up old defines

* Apply pins formatting

* GRAPHICAL_TFT_ROTATE_180 => TFT_ROTATE_180

* MKS_ROBIN_TFT_V1_1R

* merge fix

* correct resolution

* auto is default, dont need be there, and it will allow the user to configure it even for named displays

* to not use rotation with MKS_ROBIN_TFT_V1_1R

* i like () in macros

* avoid sleepy commits

* default for st7789 is rgb

* nano follow up

* to allow ili9328 rotation

* default is rgb

* boards merge follow up

* to match bootloader orientation

* HAS_TOUCH_XPT2046 is not hal specific anymore

* lets not forget LPC

* 180 rotation for ili9328 and R61505

* Clean up whitespace

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-10-16 16:39:55 -05:00
11662bf2b6 Marlin 2.0.7.1 2020-10-16 16:39:55 -05:00
887e2637c0 Fixes for TFTGLCD Panel, FastIO (#19614) 2020-10-16 16:39:55 -05:00
958f05e4b4 HAS_CHARACTER_LCD => HAS_MARLINUI_HD44780 (#19673) 2020-10-16 16:39:55 -05:00
9126a2e654 [cron] Bump distribution date (2020-10-10) 2020-10-16 16:39:55 -05:00
5070fae231 Batch appercase hex values 2020-10-16 16:39:54 -05:00
454f9d6319 Optional M42/M226; Add more features filters (#19664) 2020-10-16 16:39:54 -05:00
59b6b32e6e Support for Debug Codes - Dnnn (#19225)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:54 -05:00
6d9709e20d Support for FLY MINI (#19185) 2020-10-16 16:39:54 -05:00
7a484959d5 Fix touch ifndefs (#19661) 2020-10-16 16:39:54 -05:00
78060f55e6 Update Italian language (#19654) 2020-10-16 16:39:54 -05:00
3fca19fbab [cron] Bump distribution date (2020-10-09) 2020-10-16 16:39:54 -05:00
b8700e0aa8 Fix and improve Makefile / CMake (#19640) 2020-10-16 16:39:54 -05:00
d66bc5cec2 Permit touch calibration override 2020-10-16 16:39:54 -05:00
fb28c6041a Use 0xFF (not 'ff') for byte transfer 2020-10-16 16:39:54 -05:00
0f9d57e03a Apply env:mega2560ext to relevant boards (#19624) 2020-10-16 16:39:54 -05:00
32377849da Update PROBE_OFFSET_WIZARD comment (#19652) 2020-10-16 16:39:54 -05:00
0975c487f0 [cron] Bump distribution date (2020-10-08) 2020-10-16 16:39:54 -05:00
d07ad63016 More accessible PROBE_OFFSET_WIZARD (#19647) 2020-10-16 16:39:54 -05:00
1a5a3cf253 Restore ° to 6x9 small info font (#19645) 2020-10-16 16:39:54 -05:00
6f6901180c Chamber vent/fan followup 2020-10-16 16:39:54 -05:00
9cc6297292 Fix small font section directive, mixer warning 2020-10-16 16:39:54 -05:00
cf53bc2dd2 [cron] Bump distribution date (2020-10-07) 2020-10-16 16:39:54 -05:00
f4f4ea05e1 Update language fonts 2020-10-16 16:39:54 -05:00
2b845e5a75 Add Chamber servo vent, auto fan (#19519) 2020-10-16 16:39:54 -05:00
6fcbf11454 Fix Ender-3 V2 DWIN Stop SD Print (#19642)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:54 -05:00
8a69147adf Improve retract / unretract labels 2020-10-16 16:39:54 -05:00
f8ceedea5c [cron] Bump distribution date (2020-10-06) 2020-10-16 16:39:54 -05:00
a4e4226578 Trailing whitespace 2020-10-16 16:39:54 -05:00
e76fd6bd33 Sync config to examples 2020-10-16 16:39:54 -05:00
437bee418b Z Probe Offset Wizard (#18866) 2020-10-16 16:39:54 -05:00
31238de937 Allow bypass for cold E movement (#19606) 2020-10-16 16:39:54 -05:00
cb8c99c4f8 [cron] Bump distribution date (2020-10-05) 2020-10-16 16:39:54 -05:00
2fe81d0cb2 Fix Archim1 stepper timing (with new variant) (#19596) 2020-10-16 16:39:54 -05:00
fb7d7ee7b4 Add HAS_FAST_MOVES 2020-10-16 16:39:54 -05:00
d99fdcf526 Fix Z_AFTER_HOMING without probe (#19607) 2020-10-16 16:39:54 -05:00
e4d2234a04 Move SF_ARC_FIX option 2020-10-16 16:39:54 -05:00
bea919da6e Fix German translation purging/unloading (#19615) 2020-10-16 16:39:54 -05:00
2fb22cc116 Shared singlenozzle item 2020-10-16 16:39:54 -05:00
d4b6542ce1 Fix Tune/Fan edit items
- Fixes #19617
- Followup to #18400
2020-10-16 16:39:53 -05:00
7d47ee732e [cron] Bump distribution date (2020-10-04) 2020-10-16 16:39:53 -05:00
6ceacd62f9 [cron] Bump distribution date (2020-10-03) 2020-10-16 16:39:53 -05:00
2ce6741731 Fix 'bossac' upload on Windows (#19545) 2020-10-16 16:39:53 -05:00
2213eb3317 Touch UI support for X2, Y2 and Z2 (#19538) 2020-10-16 16:39:53 -05:00
b947590082 Fix wrappers on HAL/STM32F1 .cpp files (#19581)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-10-16 16:39:53 -05:00
20bcaa78f6 Fix TEMP_ADC_PROBE support for STM32F1 (#19582)
Co-authored-by: ellensp <ellensp@ellensp-HP-ProBook-6470b.fritz.box>
2020-10-16 16:39:53 -05:00
9834a36a17 Fix compile of MMU2 with S-mode disabled (#19584) 2020-10-16 16:39:24 -05:00
90801f8815 Fix onboard SD card support for Teensy 3.6 & 4.1 (#19593) 2020-10-16 16:39:24 -05:00
4d1357e318 Adjust HAL platform defines, comments 2020-10-16 16:39:23 -05:00
8d090cbdbb Replace tabs with spaces 2020-10-16 16:38:59 -05:00
ec5b78d18b Minor SPI fixes, systick_callback for STM32F1 HAL compatibility (#19565) 2020-10-16 16:38:59 -05:00
d33317eadb [cron] Bump distribution date (2020-10-02) 2020-10-16 16:38:59 -05:00
f8375a3ea2 G35 workaround for Pronterface "feature" (#19577) 2020-10-16 16:38:59 -05:00
5a02959d18 Fix Anycubic i3 Mega target temperature display (#19572)
Also includes a workaround for missing (probably un-fetched) long name in file listing
2020-10-16 16:38:58 -05:00
cc123bc657 No move on Park = No move on Resume (#19569) 2020-10-16 16:38:58 -05:00
4f6a0605bf Update Slovak language (#19561) 2020-10-16 16:38:58 -05:00
b89700ed35 Fix Buzzer (pin) init for uninitialized FastIO (#19559) 2020-10-16 16:38:58 -05:00
ca853fbe19 Fix Move Screen with disabled Touch (#19558) 2020-10-16 16:38:58 -05:00
1ba2548fb2 [cron] Bump distribution date (2020-10-01) 2020-10-16 16:38:58 -05:00
1332be77a5 [cron] Bump distribution date (2020-09-30) 2020-10-16 16:38:58 -05:00
a7f334387c Keep HAL tasks running during PID Autotune (#19671) 2020-10-09 23:37:43 -05:00
09beed85c2 Merge tag '2.0.7' of https://github.com/MarlinFirmware/Marlin into master 2020-10-06 19:39:16 -05:00
4f755578b1 Merge tag '2.0.6.1' of https://github.com/MarlinFirmware/Marlin into master 2020-10-06 19:33:37 -05:00
e8177735a0 Marlin 2.0.7 2020-09-28 21:02:09 -05:00
aac0326f7f Merge bugfix-2.0.x into 2.0.x 2020-09-28 20:59:49 -05:00
41774ec9de [cron] Bump distribution date (2020-09-29) 2020-09-29 00:13:48 +00:00
60155aa442 Anycubic Chiron full feature support (#19505) 2020-09-28 18:53:40 -05:00
169ec65e72 Fix up E3 DWIN Power Panic 2020-09-28 17:17:12 -05:00
660420050b Fetch longname when a file exists 2020-09-28 17:17:12 -05:00
0ddb4d88a9 Add extra CardReader debugging 2020-09-28 17:17:12 -05:00
9142f5446a Improve Power-Loss Recovery (#19540) 2020-09-28 15:52:21 -05:00
6d4c82f4d8 Fix diveToFile with open Dir object (#19539)
* Fix CardReader diveToFile
* Add CardReader::fileExists
2020-09-28 15:46:12 -05:00
4424645e04 Multi-line comments cleanup (#19535) 2020-09-28 14:53:50 -05:00
05517e2096 Change "Fr" on LCD to ">>" (#18830) 2020-09-28 04:55:46 -05:00
be7bbadabe Default E3 V2 to English 2020-09-28 04:39:29 -05:00
d4a5b10133 Tweaks to git helpers 2020-09-28 03:57:33 -05:00
4584a52ba5 Update configs to 020007 2020-09-28 03:55:14 -05:00
27bdf4b24e MarlinUI for SPI/I2C TFT-GLCD character-based display bridge (#19375) 2020-09-28 01:52:38 -05:00
c2c6a679ea Rename LCD conditionals (#19533) 2020-09-28 01:13:27 -05:00
1c372df449 Prettier INI 2020-09-28 01:11:48 -05:00
3a91ab4706 Menu tweak 2020-09-28 01:02:05 -05:00
303d871ca7 Update AnyCubic deps 2020-09-28 01:02:05 -05:00
00c09e95ac Thermistor: Kis3d Silicone heater + precision cast plate (#19528) 2020-09-27 21:38:30 -05:00
f3de0f6c53 Working LCD_USE_DMA_FSMC (#19522) 2020-09-27 21:28:48 -05:00
7415e4e66d Fix Allen Key Probe pin test (#19520) 2020-09-27 21:25:35 -05:00
6572d7131f LVGL followup fixing "C", etc. (#19517) 2020-09-27 21:22:08 -05:00
d9d920e0b3 [cron] Bump distribution date (2020-09-28) 2020-09-28 00:13:59 +00:00
cd5735130d CardReader cleanup 2020-09-27 16:58:50 -05:00
3245a5fdf6 E3 DWIN: "No Media" message 2020-09-27 16:55:57 -05:00
37cf156223 E3 DWIN: General cleanup 2020-09-27 16:55:57 -05:00
d2741c8680 Allow M524 between M23 and M24 2020-09-27 16:55:57 -05:00
dd118e2f36 Drop extra Bed PID 2020-09-27 16:55:57 -05:00
4975e93350 Tweak MMU beeps, misc. cleanup 2020-09-27 02:03:00 -05:00
82e602c847 [cron] Bump distribution date (2020-09-27) 2020-09-27 00:14:12 +00:00
88d7f4d7be MMU2 S Mode spins the BMG gears during C0 (#19429) 2020-09-25 20:28:01 -05:00
5cf2cf2be9 Allow ColorUI color customization (#19484) 2020-09-25 20:05:23 -05:00
a7f5d38da7 Fix MBL "Click to continue" on Color UI touchscreen (#19514) 2020-09-25 19:58:45 -05:00
ec4a0a3e0d SKR E3 Turbo followup (#19513) 2020-09-25 19:49:36 -05:00
97e0d55073 Fix SKR 1.4 thermistor pin comments (#19510) 2020-09-25 19:48:24 -05:00
7efd740950 Fix MKS Robin undefined pins error (#19507) 2020-09-25 19:47:22 -05:00
61d96ce1c9 Escape the M33 string arg (#19515) 2020-09-25 19:45:01 -05:00
f902e208a3 [cron] Bump distribution date (2020-09-26) 2020-09-26 00:13:15 +00:00
178a1da165 TFT: No timeout on Move Screen (#19426) 2020-09-25 14:58:28 -05:00
7ce91c5ffe Sanity check old serial names 2020-09-24 21:46:13 -05:00
23faf902ab BigTreeTech SKR E3 Turbo (#19500) 2020-09-24 21:19:04 -05:00
da6c8317a7 Fix and improve STM32F1 serial (#19464) 2020-09-24 20:28:48 -05:00
6bb6f7f288 [cron] Bump distribution date (2020-09-25) 2020-09-25 00:13:26 +00:00
b3223d7b41 Fix some pin inits 2020-09-23 21:36:39 -05:00
568f292883 HAL/serial followup 2020-09-23 21:36:31 -05:00
4b928b2da8 HAL and serial cleanup
Co-Authored-By: Jason Smith <20053467+sjasonsmith@users.noreply.github.com>
2020-09-23 19:45:33 -05:00
928d874dea [cron] Bump distribution date (2020-09-24) 2020-09-24 00:13:39 +00:00
ecc8013812 Whitespace cleanup 2020-09-23 17:43:32 -05:00
6634bedb25 Define UART pins for LPC debug based on LPC_PINCFG_UART (#19475) 2020-09-23 16:03:07 -05:00
e3d4e328f9 Preserve brightness in EEPROM validate (#19485)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-09-23 15:44:15 -05:00
93421f3a00 Teensy pins cleanup 2020-09-23 15:34:10 -05:00
023cb54fae MKS Robin Mini uses ONBOARD_SPI_DEVICE (#19460) 2020-09-23 15:07:34 -05:00
90bc1993b6 Include pins.h in dependencies script (#19468) 2020-09-23 15:06:36 -05:00
362145f608 New Touch UI buttons (#19465) 2020-09-22 21:01:01 -05:00
5d0429ee2a Catch a TMC address conflict early (#19458) 2020-09-22 20:36:31 -05:00
5f5f76956f Fix up tests, warnings 2020-09-22 19:59:02 -05:00
fd8cd31504 [cron] Bump distribution date (2020-09-23) 2020-09-23 00:13:17 +00:00
a87c517da5 Fix Teensy 4.1 include 2020-09-22 17:52:42 -05:00
d051c2adbd Update board/teensy comment (#19456) 2020-09-22 17:36:59 -05:00
63e7ae793b MKS SGEN L V2 adaptable heaters/fans (#19462) 2020-09-22 15:57:17 -05:00
79dc8a2297 Define <u8,u8,u8>::softSPI (#19419) 2020-09-22 15:44:17 -05:00
225487f9db Fix up K8800 pins (#19476) 2020-09-22 15:08:14 -05:00
47aa61c0ec [cron] Bump distribution date (2020-09-22) 2020-09-22 00:13:24 +00:00
1bfc51ad5c Update pins_ANET_10.h 2020-09-21 16:19:09 +01:00
fb48cd0ab4 Replace Serial with Serial1 in pins files (#19459) 2020-09-20 22:30:20 -05:00
0251eb85b2 Optional menu item for Assisted Tramming (#19447) 2020-09-20 22:29:34 -05:00
d8ed749045 Add MKS Robin E3P, improve LVGL UI (#19442) 2020-09-20 20:55:02 -05:00
77b06dce0c [cron] Bump distribution date (2020-09-21) 2020-09-20 20:51:21 -05:00
4f73ac7289 Add HAS_ROTARY_ENCODER 2020-09-20 20:51:21 -05:00
60ab7a1ddb Cleanup before MKS changes 2020-09-20 20:51:21 -05:00
76d8d1742c Add multi-extruder condition 2020-09-20 20:51:21 -05:00
8e0fac897b Whitespace cleanup 2020-09-20 18:25:42 -05:00
0c7035d8a3 [cron] Bump distribution date (2020-09-20) 2020-09-20 00:13:46 +00:00
b5e4511de8 Fix Creality DWIN Control menu icons (#19441) 2020-09-19 10:19:45 -05:00
98bcb25fd4 Ultratronics Pro SPI pins (#19444) 2020-09-19 10:18:42 -05:00
af8f9f790a Optional Host Start menu item (#19443) 2020-09-19 10:17:24 -05:00
9fd06fa767 Fix case light brightness save/load (#19436) 2020-09-19 09:23:56 -05:00
4696142a31 Fix compile for Taz Pro (#19424) 2020-09-19 09:20:15 -05:00
435e1535cc Change some dwin defines 2020-09-19 09:04:00 -05:00
4628f0e237 Fix CoreXY compile with backlash cal. (#19422) 2020-09-19 08:14:34 -05:00
e65deacabb [cron] Bump distribution date (2020-09-19) 2020-09-19 00:13:10 +00:00
55ba5044ef Fix missing include (#19418)
Co-authored-by: ellensp <530024+ellensp@users.noreply.github.com>
2020-09-18 04:45:56 -05:00
648269e0ec [cron] Bump distribution date (2020-09-18) 2020-09-18 00:13:20 +00:00
5b56d6698a Move screen for Color UI (#19386) 2020-09-17 06:52:21 -05:00
62206c0386 Host Action: Start (#19398) 2020-09-17 06:36:21 -05:00
a52afd2aeb Update stale issue message and parameters (#19412)
* Update stale issue bot

* Update close-stale.yml

* Update close-stale.yml

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-09-17 06:35:10 -05:00
da1a60aeb6 Expose JOYSTICK_DEBUG to the general user (#19394)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-09-17 06:01:10 -05:00
3eaa19fdb0 Fix MKS UI SPI flash typo (#19410) 2020-09-17 05:52:47 -05:00
c539254101 Add warning to ExtUI Bed Mesh Screen. (#19397)
- Show a warning on the Mesh Bed Leveling screen if some points aren't probed.
2020-09-17 05:49:18 -05:00
24d8daa01b SHOW_REMAINING_TIME for HD44780 character LCD (#19416) 2020-09-17 05:41:13 -05:00
073b7f1e3a E3 V2 DWIN: Z-Offset, cleanup, versatility (#19384)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-09-17 05:35:04 -05:00
5926bacea1 Add more DWIN commands, docs (#19395) 2020-09-17 03:17:47 -05:00
c5204807e9 Fix missing spaces in info menu (#19404) 2020-09-17 03:07:03 -05:00
9d5a9621de Demo and test multiple PID defaults (#19413) 2020-09-17 03:06:01 -05:00
9cf8537051 [cron] Bump distribution date (2020-09-17) 2020-09-17 00:13:06 +00:00
56ed55ddba MarlinUI percent methods for all 2020-09-16 07:12:24 -05:00
217bae9ff1 More DWIN cleanup 2020-09-16 07:12:24 -05:00
250bfac0cc E3 V2 DWIN cleanup 2020-09-16 04:35:30 -05:00
57a87a278b [cron] Bump distribution date (2020-09-16) 2020-09-16 00:12:57 +00:00
0b7d69d06f [cron] Bump distribution date (2020-09-15) 2020-09-15 00:13:01 +00:00
79d4123319 Only set up SPI pins as needed (#19372) 2020-09-14 17:16:19 -05:00
648e7f73a5 More strict STATIC_ITEM_N (#19378) 2020-09-14 03:28:21 -05:00
941b890881 Add missing FTDI EVE menu source (#19382) 2020-09-14 03:25:20 -05:00
0f9eb480aa Allow E3 V2 DWIN without EEPROM, POWER_LOSS_RECOVERY 2020-09-14 02:48:45 -05:00
0473f7ee58 M115 strings 2020-09-14 02:42:05 -05:00
3a89d34e7f Always show Compiled: 2020-09-14 02:42:05 -05:00
cd85fa3abe Better choice of code
Followup to #19344
2020-09-14 02:22:44 -05:00
979876e958 Improve temperature runaway, idle timeout (#19339)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-09-13 23:58:39 -05:00
cf8316bfbb [cron] Bump distribution date (2020-09-14) 2020-09-14 00:13:25 +00:00
49ca16c3fb heater_ind_t => heater_id_t 2020-09-13 18:22:28 -05:00
d93471fdad Allow SWD debug on Robin Nano (#19345) 2020-09-12 23:33:55 -05:00
872516f9f9 Touch UI "Leveling" menu, misc. fixes (#19349) 2020-09-12 23:32:00 -05:00
7c7e663911 Fix extra string substitution bug (#19351) 2020-09-12 23:01:03 -05:00
c04d5624da Read from backup TMC StealthChop state (#19364) 2020-09-12 22:59:20 -05:00
d07ce9ef21 Fix EXP2 pin define for MKS SGEN_L (#19369) 2020-09-12 21:52:46 -05:00
dcf3587d9a Update Italian language (#19365) 2020-09-12 21:51:20 -05:00
94244c1d93 Highlight Creality DWIN menu icons (#19368) 2020-09-12 21:50:15 -05:00
ed39317203 [cron] Bump distribution date (2020-09-13) 2020-09-13 00:13:14 +00:00
1917ed8741 M872 wait for probe temperature (#19344) 2020-09-11 22:51:19 -05:00
6f8282f01e Fix Print Stats appearance (#19348) 2020-09-11 19:53:06 -05:00
4f390ea18f [cron] Bump distribution date (2020-09-12) 2020-09-12 00:12:50 +00:00
cb9a34c6f7 Fix Creality RET6 env - RE (#19340) 2020-09-11 02:12:49 -05:00
6759aff220 Clean up W25QXXFlash class 2020-09-10 21:54:04 -05:00
b33f4ba300 Use F() for Ender 3 V2 DWIN 2020-09-10 21:52:36 -05:00
85089898be Translate encoder comments 2020-09-10 20:14:07 -05:00
4d65ab5a0b [cron] Bump distribution date (2020-09-11) 2020-09-11 00:12:52 +00:00
abf1222f1d Fix missing BOARD_K8800 (#19331) 2020-09-10 17:06:37 -05:00
b2ba9009d0 Fix "too cold" in M600 (#19332) 2020-09-10 16:47:58 -05:00
21ee7be30a Warning if SDCARD_READONLY should be disabled 2020-09-10 03:03:42 -05:00
9b78138600 General cleanup 2020-09-10 02:29:01 -05:00
160f70be63 LPC: Finish DMA transfer, use HW SPI class (#19191) 2020-09-10 00:41:26 -05:00
b98946b5c1 Raise STM32F1 UART IRQ Priority, add error handling (#19301)
(Error handling for Overrun, Framing and Parity.)
2020-09-09 22:46:50 -05:00
20ac0faa86 Fix Separate Neopixel menu labels (#19303) 2020-09-09 22:04:10 -05:00
700e0fe7d7 Warn in platformio.ini about RCT6 512K (#19312) 2020-09-09 21:59:42 -05:00
328d8b5952 Fix ExtUI SD sorting, compile issues 2020-09-09 21:54:08 -05:00
006b7f3f17 MKS Gen L V2.1 (#19314) 2020-09-09 21:48:42 -05:00
6eebcb5e48 Fix compile with Danish, Basque (#19325) 2020-09-09 21:23:01 -05:00
0b01aa8276 [cron] Bump distribution date (2020-09-10) 2020-09-10 00:12:33 +00:00
049fbc92a9 Support for Teensy 4 (#19311) 2020-09-09 18:57:20 -05:00
bc7720c0cd Minor HAL cleanup 2020-09-08 22:17:44 -05:00
40fdf8f087 [cron] Bump distribution date (2020-09-09) 2020-09-09 00:12:44 +00:00
4fc1aba848 Update HAL/STM32 platform to 8.0 (#18496) 2020-09-07 21:41:48 -05:00
828a582f4d Make M600 heat up the nozzle. Reset runout on fail. (#19298)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-09-07 21:29:45 -05:00
d1d8417a61 [cron] Bump distribution date (2020-09-08) 2020-09-08 00:12:45 +00:00
5c3140811d TFT is neither "graphical" nor "character" (#19297) 2020-09-07 17:07:53 -05:00
4268d86da1 Sanity-check BABYSTEP_DISPLAY_TOTAL with ColorUI (#19284) 2020-09-07 03:17:35 -05:00
bb017038d4 Fix M166 Gradient Mix for DELTA (#19285) 2020-09-07 03:15:42 -05:00
d3f1f3533d Separate Neopixel followup (#19287) 2020-09-07 02:59:31 -05:00
a445746a8b Clean up LCD conditionals, DWIN 2020-09-06 23:21:42 -05:00
b709baba7a Whitespace cleanup 2020-09-06 22:51:59 -05:00
ef1d154a4a Adjust GTR PeripheralPins to avoid timer conflicts (#19183) 2020-09-06 20:10:25 -05:00
a4bc9e669c STM32F1 EP with USB_COMPOSITE (#19281) 2020-09-06 20:04:20 -05:00
5ea7a8373a Menu items for Separate NeoPixel (#19280) 2020-09-06 20:00:24 -05:00
f29baed540 [cron] Bump distribution date (2020-09-07) 2020-09-07 00:13:11 +00:00
d19fc64392 Clarify disabling StallGuard for axes (#19263) 2020-09-06 17:51:19 -05:00
2b789ddab9 Touch UI long filenames fixes (#19262)
* Improvements to FTDI DLCache functionality.
* Better handling of long file names in Touch UI
- Long file names now truncated and shown with ellipsis.
- Increased display cache buffer to allow for longer filenames.
- Visual error message when display cache is exceeded.
2020-09-06 17:37:16 -05:00
86b71b83fa Fix Ender 3 V2 (DWIN) buffer overrun (#19268) 2020-09-06 17:34:08 -05:00
486731162f Fix STM32F1 SPI device init, MKS_LCD12864 (#19271) 2020-09-06 17:29:43 -05:00
b6ab163814 Emergency Parser for STM32F1 (#19279) 2020-09-06 17:23:36 -05:00
2ea1bf0e1d [cron] Bump distribution date (2020-09-06) 2020-09-06 00:13:05 +00:00
d9ad8caf02 SD card debugging 2020-09-04 20:14:30 -05:00
14314b68ec No 'ls' if media isn't mounted 2020-09-04 19:57:47 -05:00
3002e1cd60 Fix Creality V4 SD Detect 2020-09-04 19:34:51 -05:00
00e738e485 [cron] Bump distribution date (2020-09-05) 2020-09-05 00:18:44 +00:00
9913333c33 Auto-label Feature Requests (#19258) 2020-09-03 23:27:59 -05:00
1d6a92751b Tweak ESP32 Wifi sanity-check message (#19257) 2020-09-03 23:15:45 -05:00
e97e6865c3 MarkForged kinematics (#19235) 2020-09-03 20:12:53 -05:00
55dcff746b [cron] Bump distribution date (2020-09-04) 2020-09-04 00:12:46 +00:00
691f02acab Smoothieboard GLCD w/ SD support (#19241) 2020-09-03 17:52:14 -05:00
1f25312b65 Only show "SD Init Fail" with detectable media (#19236) 2020-09-03 17:46:05 -05:00
26858fdebf Separate Neopixel followup (#19250) 2020-09-03 17:43:52 -05:00
7d8d0010e3 Fix Longer3D TFT defines, disable DMA (#19251) 2020-09-03 17:40:29 -05:00
277042bc4e Hide multi-step G29 on Ender 3 V2 2020-09-03 16:55:16 -05:00
768182c691 [cron] Bump distribution date (2020-09-03) 2020-09-03 00:12:25 +00:00
ab06d5c7fb Fix UBL 'G29 I' for large meshes (#19231) 2020-09-02 01:32:52 -05:00
f97b8c835a [cron] Bump distribution date (2020-09-02) 2020-09-02 00:12:22 +00:00
f375d9bd7b MKS SGEN L V2 (#18822) 2020-09-01 18:20:16 -05:00
e3d855673e Fail SD mount without SPI re-init (#19226) 2020-09-01 17:09:28 -05:00
62268aae65 Fix Anycubic LCDs / Trigorilla 1.4 pins (#19220) 2020-09-01 17:05:52 -05:00
09ddb5a724 Separate Neopixel followup (#19224) 2020-09-01 17:03:28 -05:00
56c44b053d Delete old LCD strings (#19227) 2020-09-01 16:59:29 -05:00
2979da73cf Fix Anycubic I3 Mega (S) original screen % display (#19210) 2020-08-31 22:27:42 -05:00
d3ac4ba83d Update German, fix Mix component index (#19206) 2020-08-31 22:23:28 -05:00
203e44e026 [cron] Bump distribution date (2020-09-01) 2020-09-01 00:12:57 +00:00
4ab4dbb8a1 Permit touch params override w/ Robin nano (#19196) 2020-08-31 18:56:58 -05:00
41c7ae5d54 Separate Neopixels followup (#19179) 2020-08-31 16:06:24 -05:00
2a72961be4 Fix 'cmd' array warning (#19193) 2020-08-31 15:05:42 -05:00
8d76d8c081 [cron] Bump distribution date (2020-08-31) 2020-08-31 00:14:49 +00:00
c8995b91e2 [cron] Bump distribution date (2020-08-30) 2020-08-30 00:07:24 +00:00
e492c613f7 [cron] Bump distribution date (2020-08-29) 2020-08-29 00:13:59 +00:00
ca194ca52e Version 2.0.6.1 2020-08-27 23:45:37 -05:00
b90e7c421f Merge remote-tracking branch 'upstream/bugfix-2.0.x' into 2.0.x 2020-08-27 22:17:50 -05:00
6ac8f5abb7 [cron] Bump distribution date (2020-08-28) 2020-08-28 00:13:10 +00:00
e0b413cf19 Add set_all_homed 2020-08-27 16:38:26 -05:00
a12ac5e175 Mark axes not-homed with HOME_AFTER_DEACTIVATE (#18907) 2020-08-27 16:05:53 -05:00
462d3eeab1 set_axis_not_trusted => set_axis_never_homed 2020-08-27 14:49:00 -05:00
97ec6c1be6 Independent Neopixel option (#19115) 2020-08-27 14:18:16 -05:00
21070c0aaf Fix Creality V4 probe pin 2020-08-27 14:01:56 -05:00
a96c5209d1 Fix small typø 2020-08-27 14:01:36 -05:00
e8dcbd8300 Allocate sufficient MSG_MOVE_Z_DIST buffer
See #19158
2020-08-27 12:22:47 -05:00
cb75bec06d One MARLIN_DEV_MODE warning per rebuild (#19163) 2020-08-27 11:29:07 -05:00
1e124e6713 FYSETC S6 2.0 (#19140) 2020-08-26 19:41:15 -05:00
84ad7cdc29 [cron] Bump distribution date (2020-08-27) 2020-08-27 00:11:19 +00:00
195d20cef2 Fix SINGLENOZZLE fan speed bug (#19152) 2020-08-26 05:23:56 -05:00
91c8c6d96e Fix NEOPIXEL_STARTUP_TEST last delay (#19156) 2020-08-26 05:14:54 -05:00
1a4b82a5d6 TFT (plus Hardware SPI) for LPC (#19139) 2020-08-26 05:13:58 -05:00
4955aa5b78 Prusa => Průša 2020-08-26 02:15:50 -05:00
131ddeaeba Direct Stepping update (#19135) 2020-08-26 01:32:56 -05:00
b07dd44ec2 Fixes to FTDI Touch UI (#19134)
- Fix unused variable warning
- Fix for filament runout sound
- Fix for developer menu access
- Fix compilation error when using CALIBRATION_GCODE
- Remove material labels in change filament screen
- Add decimals to status screen Z coordinate
- Add more descriptive message on heater timeout
2020-08-26 00:59:06 -05:00
1793de4a28 Add Einsy Rambo Filament Runout Pin (#19136) 2020-08-26 00:44:15 -05:00
646d90f3da Fix SD pins for SKR Pro and GTR (#19047) 2020-08-26 00:43:33 -05:00
bd9dc73d3d Warn about MARLIN_DEV_MODE 2020-08-25 23:57:48 -05:00
5db62d7abd No COM_PIN needed for DWIN 2020-08-25 23:34:58 -05:00
076f59c630 [cron] Bump distribution date (2020-08-26) 2020-08-26 00:11:08 +00:00
66694a213f LEDs followup (#19133) 2020-08-25 08:16:43 -05:00
e2edfabc3c [cron] Bump distribution date (2020-08-25) 2020-08-25 00:11:11 +00:00
f7fe499305 Color UI + Robin Nano test (#19118) 2020-08-24 13:23:32 -05:00
f67ad6fd70 Fix auto-power in PID autotune (#19119) 2020-08-24 09:54:25 -05:00
c488070859 Minor cleanup w/r/t LEDs 2020-08-23 23:57:51 -05:00
4b124352ef TFT32 for MKS Robin Nano 1.2 (#19031) 2020-08-23 22:13:49 -05:00
5dadba432e [cron] Bump distribution date (2020-08-24) 2020-08-24 00:12:38 +00:00
dd6cbbbbad Feedrate comment (#19116) 2020-08-23 05:08:47 -05:00
638f6f0f06 Neopixel => NeoPixel 2020-08-23 03:14:11 -05:00
b36163d53a Fix up conditions, comments 2020-08-23 02:45:58 -05:00
6036a0df6b Fix DUET_SMART_EFFECTOR 2020-08-23 02:07:52 -05:00
bff0c68078 Consistent static/value item macros 2020-08-23 01:09:23 -05:00
34fb9c7071 [cron] Bump distribution date (2020-08-23) 2020-08-23 00:12:22 +00:00
d84aff701e Fix probing margin sanity-check 2020-08-22 17:28:44 -05:00
fa5a1f7d7f PGMSTR constexpr => const 2020-08-22 16:40:27 -05:00
ca105493aa NOZZLE_CLEAN_NO_Y (#18870) 2020-08-22 16:20:37 -05:00
434e43cc42 Change XY_PROBE_SPEED format to (x*60) (#18997) 2020-08-22 02:04:28 -05:00
a9f7e855d8 Reformat pins files 2020-08-22 01:22:21 -05:00
8cededa7dd Permit ST7789V orientation override (#19044) 2020-08-22 00:35:39 -05:00
b6e4acec9d Prefer Servo AVR timer4 over 3 (#19025) 2020-08-21 23:49:39 -05:00
aa92fa7ee3 DIGIPOT_I2C pins for SMOOTHIEBOARD (#19098) 2020-08-21 23:47:25 -05:00
563eda4b6b Translatable strings on Ender-3 V2 DWIN (#19053)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-08-21 23:44:21 -05:00
8652a7bdd2 HIGH/LOW naming of pin state settings (#19089) 2020-08-21 23:13:43 -05:00
93167afaf5 Update copy_marlin_variant_to_framework.py 2020-08-21 22:50:45 -05:00
02ea13b511 GRAPHICAL_TFT_ROTATE_180 for ST7789V (#19042) 2020-08-21 22:04:31 -05:00
d6574a03a1 CI with PIO-dev (#19058) 2020-08-21 22:03:32 -05:00
ec02aee46c More menu header fu 2020-08-21 22:01:33 -05:00
04909a2010 Creality3D v4.2.7 (#19088) 2020-08-21 21:56:18 -05:00
6b549e1971 Optional homing in LCD Repeatability Test (#19104) 2020-08-21 21:20:30 -05:00
bb8606ac29 Menu headers followup 2020-08-21 21:19:13 -05:00
45d22d4f09 [cron] Bump distribution date (2020-08-22) 2020-08-22 00:11:44 +00:00
a37cf24900 Emulated DOGM via HAL TFT, XPT IO (#19017) 2020-08-21 18:54:21 -05:00
b8c4098de2 Remove extraneous defines 2020-08-21 18:11:37 -05:00
4f67642122 Header for individual menus 2020-08-21 18:11:37 -05:00
e2ee05c976 Broadcast SD Print Completion (#19102) 2020-08-21 17:06:51 -05:00
7e65464dd7 Fix M512 comment (#19108) 2020-08-21 17:04:32 -05:00
d10b11ad9f Allow 'ghtp' to set a specific remote 2020-08-21 16:22:57 -05:00
db8522b411 Fix up mixer menu display 2020-08-21 03:37:30 -05:00
ba6c41b798 Apply specific menu item types 2020-08-21 02:59:38 -05:00
bf316d9ec5 Fix Select Screen cancel destination 2020-08-21 02:59:23 -05:00
7807b613d5 Update some comments 2020-08-21 02:59:23 -05:00
28a0650cf3 Add custom_verbose, custom_gcc deps flags 2020-08-21 02:49:05 -05:00
16e1dbbb21 [cron] Bump distribution date (2020-08-21) 2020-08-21 00:11:45 +00:00
853aec2c9a Move ExtUI displays to sub-folder (#19070) 2020-08-20 01:38:22 -05:00
38cd7b9938 Config adjustments 2020-08-19 22:42:54 -05:00
3426c7fc94 Configurable number of M106 fans (#18883) 2020-08-19 20:11:20 -05:00
64e181979c Env mega2560ext adds pins 70-85 (#19022) 2020-08-19 19:18:39 -05:00
a4809b3a47 [cron] Bump distribution date (2020-08-20) 2020-08-20 00:11:10 +00:00
a62ae2aa2d Default Filament Runout Sensor enabled state (#19013) 2020-08-19 18:58:18 -05:00
d3c5161476 Fix __ARM__ / __arm__ typo (#19063) 2020-08-19 02:59:37 -05:00
60b61de395 "SD init fail" status error (#19064) 2020-08-19 02:58:41 -05:00
f205bff2cc Fix PSU on for PID autotune (#19066) 2020-08-19 02:49:46 -05:00
092aad1813 Creality DWIN cleanup 2020-08-19 01:51:22 -05:00
2cbc84855b Creality DWIN simple beeper 2020-08-19 01:51:08 -05:00
167e42af99 [cron] Bump distribution date (2020-08-19) 2020-08-19 00:11:56 +00:00
c55f477520 [cron] Bump distribution date (2020-08-18) 2020-08-18 00:10:40 +00:00
ed775ac985 [cron] Bump distribution date (2020-08-17) 2020-08-17 00:11:16 +00:00
19818a95a2 Checks for CR10_STOCKDISPLAY with Creality v4 (#19019) 2020-08-15 22:57:07 -05:00
96e29cd7e5 Fix IS_PROBE_PIN macro (#19024) 2020-08-15 22:52:35 -05:00
e70440b7cb Fix IS_PROBE_PIN macro (#19024) 2020-08-15 22:50:28 -05:00
bb64aa7841 Update build script for PIO 4.4 (#19034) 2020-08-15 19:38:13 -05:00
0e8cdd1938 [cron] Bump distribution date (2020-08-16) 2020-08-16 00:11:06 +00:00
f7ff3f0803 [cron] Bump distribution date (2020-08-15) 2020-08-15 00:10:28 +00:00
8f730cfb6e Fix ExtUI base methods 2020-08-14 08:46:38 -05:00
6cfc4b5711 Let laser/spindle use free AVR servo timers (#19011) 2020-08-14 08:41:44 -05:00
1b097d0467 Wait for hotend temp before Resume move (#19009) 2020-08-14 08:38:00 -05:00
e69bbc3531 ENDER2_STOCKDISPLAY for BTT SKR 1.4 (and Turbo) (#19002) 2020-08-14 08:35:53 -05:00
5038cddfd5 Add option to arrange Neopixel sets in series (#18992) 2020-08-14 08:25:45 -05:00
1b28a28ced Unhide /src folders in Sublime 2020-08-14 06:32:08 -05:00
b11c3ddbed M80 followup 2020-08-14 00:33:10 -05:00
56b35fc103 Do runout.reset after EEPROM read 2020-08-14 00:16:22 -05:00
aaba9b7880 Clean up M80/M81, DWIN 2020-08-14 00:16:22 -05:00
16cb4303a4 Fix touch test 2020-08-14 00:16:22 -05:00
506deedfdd config-labels.py needs py3 2020-08-14 00:16:22 -05:00
3ddb720722 Fix 'sync_plan_position' call (#19016) 2020-08-13 22:37:57 -05:00
567d77f1cb TFT: Restore ILI9341 colors and reversed logic (#19010)
Followup to #18877, #18901, #18817
2020-08-13 22:32:01 -05:00
f01cb240d7 [cron] Bump distribution date (2020-08-14) 2020-08-14 00:10:34 +00:00
ff5c8d3570 Optimize LVGL with HAL TFT IO (SPI and FSMC) (#18974) 2020-08-13 18:31:59 -05:00
3b9e0c3dde [cron] Bump distribution date (2020-08-13) 2020-08-13 00:10:41 +00:00
ee28a10795 String interpolation for 2-digit numbers (#18998) 2020-08-12 16:46:51 -05:00
ca4eaf92b4 [cron] Bump distribution date (2020-08-12) 2020-08-12 00:10:11 +00:00
bd690f12bc Mention units for MANUAL_FEEDRATE (#18993) 2020-08-11 03:11:40 -05:00
9590fcd855 EVENT_GCODE_SD_STOP => ABORT (#18978) 2020-08-10 20:25:35 -05:00
b14f630f26 MKS Robin new 320x240 TFT Color UI support (#18985) 2020-08-10 20:21:48 -05:00
6dd054895b Add'l CI/git script tweaks, fixes 2020-08-10 20:17:41 -05:00
f62578efec For FTDI800 compatibility, remove VERTEX_FORMAT dependency (#18982) 2020-08-10 20:06:19 -05:00
d2d6c167df Fix Ender-3 V2 DWIN with manual mesh, host prompt (#18981) 2020-08-10 20:04:40 -05:00
276d78461e [cron] Bump distribution date (2020-08-11) 2020-08-11 00:10:45 +00:00
911cdd4d2f Fix scripts using gawk and wget 2020-08-10 01:47:49 -05:00
ce3df42e22 Fix DISABLE_[XYZE] code (#18970)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-08-09 20:48:57 -05:00
f642656bff [cron] Bump distribution date (2020-08-10) 2020-08-10 00:10:53 +00:00
ftk
b15c207d08 Remaining Time for LIGHTWEIGHT_UI (#18875) 2020-08-09 17:19:35 -05:00
81f5973afc Followup for SPI Flash 2020-08-09 15:58:12 -05:00
f7b261a363 Shorthand values for M575 B 2020-08-09 15:55:31 -05:00
837dc4727d Tool-change Z move followup (#18963) 2020-08-09 15:46:47 -05:00
8318d90e85 Password followup 2020-08-08 20:13:15 -05:00
852e5ae042 Password via G-code and MarlinUI (#18399)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-08-08 20:00:42 -05:00
0a1b865987 W25QXX SPI Flash support (#18897)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-08-08 19:24:31 -05:00
58cfdb8f57 [cron] Bump distribution date (2020-08-09) 2020-08-09 00:10:45 +00:00
2ef6c8ba97 Marlin Color UI for STM32F1 (SPI) (#18958) 2020-08-08 18:45:34 -05:00
e3c0891d2b Fix compiler search in non-default PIO installs (#18960) 2020-08-08 18:40:12 -05:00
c2d5b63a98 Fix up STATIC_ITEM (#18962) 2020-08-08 18:21:44 -05:00
ee69fb00a6 Marlin Color UI (FSMC) for STM32F1 (#18952) 2020-08-08 00:32:30 -05:00
b84c69072e Patch hex_print 2020-08-08 00:17:09 -05:00
97cb0a8c3e General cleanup 2020-08-08 00:17:09 -05:00
fd646d0d66 Clean up whitespace 2020-08-07 20:52:23 -05:00
18adfe87bc configuration_store => settings 2020-08-07 20:52:23 -05:00
b3ca43fe78 Use uintptr_t for pointer-to-int 2020-08-07 19:31:05 -05:00
b68e591e58 [cron] Bump distribution date (2020-08-08) 2020-08-08 00:10:15 +00:00
fd9c6983d3 HW PWM sanity checks for SPINDLE_LASER_FREQUENCY (#18947) 2020-08-07 18:14:40 -05:00
da144dcf3b Update Slovak language (#18884) 2020-08-07 18:13:37 -05:00
1d92badecd Update Italian language (#18886) 2020-08-07 18:13:18 -05:00
242064fa99 Move Cancel Object menu, fix canceled item index (#18930) 2020-08-07 18:11:20 -05:00
ad2d1b6e31 Fix Z height after tool change (#18951) 2020-08-07 18:07:44 -05:00
7b2f7a94fa Fix Z height after tool change (#18951) 2020-08-07 18:06:25 -05:00
f2f1d8fa21 HW PWM sanity checks for SPINDLE_LASER_FREQUENCY (#18947) 2020-08-07 17:59:09 -05:00
da4eaebdc9 ZoneStar Z6FB (#18918)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-08-07 17:03:59 -05:00
cec035688d Fix / optimize FSMC init (#18941) 2020-08-07 01:55:15 -05:00
5e08efb0fc Fix LVGL "C" brace (#18942) 2020-08-07 01:53:43 -05:00
35e11e5f8b Followup fixes to LVGL for Chitu (#18940) 2020-08-06 20:52:01 -05:00
821d9e374e [cron] Bump distribution date (2020-08-07) 2020-08-07 00:10:58 +00:00
c3fdc7f81e Apply PIO-supported custom_option for deps (#18935) 2020-08-06 17:33:42 -05:00
4c8bb99059 Increase Manual E Move Feedrate to 2mm/s (#18937) 2020-08-06 17:21:55 -05:00
b2abeff9ad MKS Robin Nano CI Tests (#18927) 2020-08-06 08:15:19 -05:00
99ba866d8d Optimize G-code / feature dependencies (#18919) 2020-08-06 08:14:00 -05:00
6bcfb58cd4 More Anycubic + Trigorilla mappings, ExtUI (#18903) 2020-08-06 05:38:18 -05:00
7a5d408bc0 Conditions cleanup 2020-08-06 04:20:15 -05:00
d69c2a90b7 Simple rename of hex_print 2020-08-06 04:07:59 -05:00
a9912681b4 General cleanup 2020-08-06 00:52:36 -05:00
41718cf55f Request files needed to test a PR (#18925) 2020-08-05 22:44:30 -05:00
c61e980c9c Add Chitu 3D V6 2nd Filament Runout pin (#18922) 2020-08-05 22:42:03 -05:00
d922c002ca Followup to LVGL patch (#18920) 2020-08-05 22:40:08 -05:00
6da477e6bf Move Cancel Object menu, fix canceled item index (#18930) 2020-08-05 22:38:23 -05:00
3341fc6728 [cron] Bump distribution date (2020-08-06) 2020-08-06 00:10:09 +00:00
99fb65f359 [cron] Bump distribution date (2020-08-05) 2020-08-05 00:10:17 +00:00
04b12dde49 SPI Flash data compression (#18879) 2020-08-04 04:50:05 -05:00
3b1f84a9b7 Followup to #18906 Z_AFTER_DEACTIVATE 2020-08-04 03:21:36 -05:00
181a35181b Make ili9341 rotatable (e.g., Anycubic Predator) (#18877) 2020-08-04 03:02:08 -05:00
3a00ebd758 Change include to <stddef.h> (#18880) 2020-08-04 00:37:08 -05:00
11b2bd835d Update Slovak language (#18884) 2020-08-04 00:32:47 -05:00
b615431aa6 Update Italian language (#18886) 2020-08-04 00:32:25 -05:00
4856ac5028 Add Z_AFTER_DEACTIVATE to account for gravity (#18906) 2020-08-04 00:31:45 -05:00
04c10eda92 Fix MKS Nano v1.2 FSMC display (#18901) 2020-08-03 23:41:23 -05:00
5823ebb446 Assisted Tramming requires a probe (#18912) 2020-08-03 22:39:29 -05:00
ca0ebf10d1 Move scaled TFT / touch defines (#18915) 2020-08-03 21:55:37 -05:00
ef749bb69d [cron] Bump distribution date (2020-08-04) 2020-08-04 00:10:16 +00:00
978e0e49c7 No mks_robin extra_scripts in Trigorilla build (#18872) 2020-08-02 20:40:57 -05:00
02a500dc93 Fix Spindle/Laser PWM DC (#18871) 2020-08-02 20:40:06 -05:00
fa5ca8678c Fix FLYF407ZG pins (#18865) 2020-08-02 20:40:06 -05:00
01359cff6b Fix Duplicator i3 Plus pin diagram (#18862) 2020-08-02 20:40:06 -05:00
5e3411029d Clean up some PeripheralPins 2020-08-02 20:34:24 -05:00
4d36baf375 No mks_robin extra_scripts in Trigorilla build (#18872) 2020-08-02 20:17:43 -05:00
5701387ab9 Fix Spindle/Laser PWM DC (#18871) 2020-08-02 20:16:12 -05:00
c175cce56e Fix FLYF407ZG pins (#18865) 2020-08-02 20:13:57 -05:00
dd587d45db Fix Duplicator i3 Plus pin diagram (#18862) 2020-08-02 20:10:16 -05:00
1d240ce5a3 Translated DWIN screen titles (#18893)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-08-02 20:00:06 -05:00
5847f9c718 [cron] Bump distribution date (2020-08-03) 2020-08-03 00:10:15 +00:00
2465f2fd74 [cron] Bump distribution date (2020-08-02) 2020-08-02 00:10:12 +00:00
6b0d154956 [cron] Bump distribution date (2020-08-01) 2020-08-01 00:09:59 +00:00
b058aee1d4 [cron] Bump distribution date (2020-07-31) 2020-07-31 00:09:42 +00:00
90158f9f67 Repair config order 2020-07-30 02:27:52 -05:00
cc50c4956d Add monitor_flags 2020-07-30 02:26:02 -05:00
37b56d6347 Add monitor_flags 2020-07-30 02:24:34 -05:00
ad59adfe24 Update include_tree 2020-07-30 01:51:57 -05:00
f3b37229fa Update include_tree 2020-07-30 01:51:08 -05:00
117df87d19 Support for TFT & Touch Screens (#18130) 2020-07-30 01:43:19 -05:00
bba157e5bd SanityCheck: No Adafruit NeoPixel for STM32F1 (#18833) 2020-07-29 22:04:47 -05:00
8faa31df54 No HEATER_0_PIN needed with 0 EXTRUDERS (#18827) 2020-07-29 21:26:18 -05:00
38ce5966e1 SPI Emulated DOGM (like FSMC_GRAPHICAL_TFT, but SPI) (#18817) 2020-07-29 21:25:07 -05:00
73ce80af3a In G28 Z is sort-of known 2020-07-29 20:59:21 -05:00
121cd42c41 In G28 Z is sort-of known 2020-07-29 20:55:48 -05:00
cf1c57a04d Fix UNKNOWN_Z_NO_RAISE in G28
Bug introduced in 73fc0778b8
2020-07-29 20:55:45 -05:00
95f990a656 Fix UNKNOWN_Z_NO_RAISE in G28
Bug introduced in 73fc0778b8
2020-07-29 20:43:48 -05:00
251c5c47aa [cron] Bump distribution date (2020-07-30) 2020-07-30 00:15:26 +00:00
e549d474aa Fix URLs to websites and resources (#18844) 2020-07-29 19:04:37 -05:00
5eae8e7830 Update keypad link 2020-07-29 15:44:05 -05:00
fc95946380 Typo fix (#18856) 2020-07-29 14:49:07 -05:00
05d95171cc Clarify Nozzle-to-Probe offset (#18828)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-29 14:35:31 -05:00
5804761b5d Fix Cancel Objects index display (zero-based) (#18841) 2020-07-28 21:29:42 -05:00
37b03dea8d Fix Cancel Objects index display (zero-based) (#18841) 2020-07-28 21:28:58 -05:00
83e15f7701 [SAMD51] ES Interrupt parity with other HALs (#18836) 2020-07-28 21:19:46 -05:00
3dd21a2770 Add TEMP_PROBE_PIN for Einsy Rambo (#18823) 2020-07-28 21:18:02 -05:00
b160e8b93f Fix NEOPIXEL_LED compile w/out PRINTER_EVENT_LEDS (#18824) 2020-07-28 21:17:56 -05:00
de37196760 DISABLE_DEBUG required to free Robin nano Z_DIR_PIN (#18832) 2020-07-28 21:16:21 -05:00
62da2c97d0 DISABLE_DEBUG required to free Robin nano Z_DIR_PIN (#18832) 2020-07-28 21:15:17 -05:00
159dcd8e8a Fix NEOPIXEL_LED compile w/out PRINTER_EVENT_LEDS (#18824) 2020-07-28 20:19:12 -05:00
f205cd7d2c Add TEMP_PROBE_PIN for Einsy Rambo (#18823) 2020-07-28 20:18:02 -05:00
aaf1ee78a4 [cron] Bump distribution date (2020-07-29) 2020-07-29 00:09:42 +00:00
b80cc09b13 Keep -std=gnu++11 in stm32 build_unflags 2020-07-28 03:10:33 -05:00
de5cca6b1f Update more external links (#18819) 2020-07-28 01:04:44 -05:00
84b96d3d47 Hotfix for first round of post-release hiccups 2020-07-27 20:16:34 -05:00
5d14c3712f Fix DELTA + TMC sensorless homing + SPI endstops (#18811) 2020-07-27 20:15:14 -05:00
b5ece63778 Fix garbled print_xyz output (#18810) 2020-07-27 20:13:27 -05:00
a63ad32f71 Fix WiFi / ESP32 sanity check (#18808) 2020-07-27 20:12:30 -05:00
cead93713f [cron] Bump distribution date (2020-07-28) 2020-07-28 00:09:26 +00:00
92076c6560 Marlin Release 2.0.6 2020-07-26 20:03:06 -05:00
5e5daf1ff2 Merge remote-tracking branch 'upstream/bugfix-2.0.x' into release_206 2020-07-26 20:01:40 -05:00
de68b3753f Config for Anycubic Mega TFT 2020-07-26 19:50:43 -05:00
84b92d8f2f [cron] Bump distribution date (2020-07-27) 2020-07-27 00:09:57 +00:00
b9f0c06d83 Add 0 to EXTRUDERS :[json] (#18786) 2020-07-26 15:41:50 -05:00
6924b2deaa Prevent ESP3D_WIFISUPPORT with non-ESP32 board (#18792) 2020-07-26 15:36:58 -05:00
f949287aec Fix compile-time PWM_PIN (#18793)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-07-26 15:31:45 -05:00
3eef000e2a Fix MKS Robin Nano V2 build / upload (#18784) 2020-07-25 23:08:30 -05:00
d0222e5c76 Randomize firmware.bin, fix unflag 2020-07-25 23:06:22 -05:00
e02817b077 More folders only compiled when their feature is Enabled (#18780)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-25 21:42:13 -05:00
0bc8d315d8 Close host's Filament Change dialog (#18785) 2020-07-25 21:09:56 -05:00
89722d2196 Fix search for best compiler (#18779) 2020-07-25 20:52:44 -05:00
0dbebc2835 [cron] Bump distribution date (2020-07-26) 2020-07-26 00:09:32 +00:00
6f26ed23ee Fix ui.external_control compile error (#18778) 2020-07-25 15:57:16 -05:00
11702dc059 Update (c) 2020-07-25 04:10:21 -05:00
bc688f27dc Clean up after changes 2020-07-25 01:53:07 -05:00
d20d459132 Robin nano V2, TFT LVGL UI parameters, and more (#18500) 2020-07-25 01:18:06 -05:00
c5ec80d6c7 G425/G35 menu items; G425 pre- and post- scripts (#18737) 2020-07-24 23:31:15 -05:00
60500c0c49 Fix Lerdge variant script (#18771) 2020-07-24 22:56:33 -05:00
0a81eb15e2 Ender 3 V2: Inject 'G28 O' before G29 (#18767) 2020-07-24 22:53:35 -05:00
97c655967f [cron] Bump distribution date (2020-07-25) 2020-07-25 00:09:21 +00:00
87ff532a41 Filament Runout pin for Creality v4.2.2 board (#18763) 2020-07-24 03:58:46 -05:00
451f48231d Ender 3 V2 BL24C16 EEPROM support (#18758) 2020-07-24 03:09:14 -05:00
8c88c33d9f Apply lib_ignore from [features] (#18762) 2020-07-23 23:47:01 -05:00
1d2d616a7c Fix ESP3D_WIFISUPPORT ini typo 2020-07-23 23:35:58 -05:00
f23393c1ec Simplify encoder handling (#18754) 2020-07-23 21:28:44 -05:00
2c61e6ba28 Add CONTROLLER_FAN_IGNORE_Z (#18735) 2020-07-23 21:27:40 -05:00
9156c32a54 ibid. 2020-07-23 21:01:14 -05:00
8b637e436c Update links, README, contributing, etc. 2020-07-23 20:59:43 -05:00
d1e20eb29f Update links, README, contributing, etc. 2020-07-23 20:46:51 -05:00
715271190c Update FYSETC AIO II TMC UART pins (#18749) 2020-07-23 20:01:50 -05:00
c5b3031c69 [cron] Bump distribution date (2020-07-24) 2020-07-24 00:09:15 +00:00
e27f031a55 General cleanup 2020-07-23 16:11:58 -05:00
e1191ded02 Fast Filament Change temperature check (#18738) 2020-07-22 23:01:56 -05:00
42fbd527f3 Fix links to secure sites (#18745) 2020-07-22 22:20:14 -05:00
f9b1da7beb Linear Advance: Only change E DIR when needed (#18744) 2020-07-22 22:17:33 -05:00
0b46fcdce6 [cron] Bump distribution date (2020-07-23) 2020-07-23 00:09:18 +00:00
b4b19aef7f Custom Nozzle Wipe (#18736) 2020-07-22 01:42:44 -05:00
748c8a7ecd Explicit SdFat 2020-07-22 01:38:02 -05:00
a9e6af8566 Fix Spanish preheat strings (#18743) 2020-07-21 20:55:27 -05:00
2af216cf82 [cron] Bump distribution date (2020-07-22) 2020-07-22 00:08:57 +00:00
1e5d73579c Anycubic followup 2020-07-21 14:43:55 -05:00
2119e19bff Fix inline AnycubicSerial method 2020-07-21 05:41:26 -05:00
6027055695 Optimize LCD, Wifi, etc. libraries (#18730) 2020-07-21 04:00:39 -05:00
469f63f74d New DGUS UI var / definition syntax (#18718) 2020-07-21 03:19:25 -05:00
f34024af34 Filter some unused Marlin/src subfolders (#18729) 2020-07-21 03:15:20 -05:00
2a72f491e4 Fix build for Windows path edge case 2020-07-21 03:09:33 -05:00
f1ffca1d2d Use development version of PlatformIO (#18724) 2020-07-21 03:07:56 -05:00
9ca070fa10 Ignore unused (but downloaded) libraries (#18728) 2020-07-21 02:33:58 -05:00
e78f1237ea Matching mat.bed_temp condition 2020-07-20 21:51:25 -05:00
3aecd92298 [cron] Bump distribution date (2020-07-21) 2020-07-21 00:19:36 +00:00
cea097df83 Patch auto-deps for Windows CXX (#18721) 2020-07-20 04:52:15 -05:00
0a86291e66 Fix some LVGL warnings 2020-07-19 22:06:55 -05:00
a847f37d43 Reduce Step Smoothing ceiling to 50% CPU usage (#18719) 2020-07-19 21:53:29 -05:00
4a55bdb165 Only download & compile required libraries (#18699) 2020-07-19 21:42:30 -05:00
c6233b1ea8 SAMD51: More reliable Servo/BLTouch PWM (#18710) 2020-07-19 21:41:23 -05:00
805fb4cb1b [cron] Bump distribution date (2020-07-20) 2020-07-20 00:09:07 +00:00
12bc63913c Fix BLTouch PWM reliability in HAL/STM32 (#18702) 2020-07-19 17:41:36 -05:00
1c94033f7c Fix endian DGUS WriteVariable (#18703) 2020-07-19 17:34:36 -05:00
12ebb71155 Update Chinese (cn) language (#18705) 2020-07-19 17:23:52 -05:00
d96691f8ad Fix encoder reverse, partial steps handling (#18694) 2020-07-19 17:20:35 -05:00
cfc36684aa More customizable DGUSDisplay (#18700) 2020-07-19 16:35:15 -05:00
e85d828b24 [cron] Bump distribution date (2020-07-19) 2020-07-19 00:36:28 +00:00
0ddef5544a Misc formatting, cleanup 2020-07-18 18:59:38 -05:00
d579b70b7e Return to Status on PID Autotune (#18695) 2020-07-18 17:46:19 -05:00
a3795e3e48 Prettier BLTouch menu items (#18682) 2020-07-18 17:41:47 -05:00
afce012960 Trigorilla Pro board (#18692) 2020-07-18 17:40:10 -05:00
6f0885a3a3 Fix DGUS write variable endianness (#18689) 2020-07-18 17:26:00 -05:00
b9d4b0ddce Chitu V6 - Stepper Z2 pins (#18683) 2020-07-18 17:23:42 -05:00
f51388f287 [cron] Bump distribution date (2020-07-18) 2020-07-18 00:09:19 +00:00
c2363a81b4 Fix E3V2 M0/M1 and wait_for_user 2020-07-17 12:38:51 -05:00
f4aba99624 Use safe_delay for PSU_POWERUP_DELAY (#18680)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-17 12:33:45 -05:00
e34684a9c7 Smaller SD EEPROM file on Ender 3 V2 2020-07-17 09:30:48 -05:00
bd0430dc38 Support FT81050 with FYSETC F6 (#18678)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-17 07:40:28 -05:00
JBA
4abad60bf1 ExtUI for Anycubic I3 Mega (#18655) 2020-07-17 01:07:09 -05:00
e90bbb37d4 Tweak and use SD_ORDER 2020-07-16 22:45:57 -05:00
6dd2b1210f Fix check_hotends with > 1 hotend 2020-07-16 22:37:26 -05:00
9424567189 Fix passive Chamber Temp reading (#18674) 2020-07-16 21:42:55 -05:00
1d6868852b Chopper Timing Preset for 24V 0.9° (#18662) 2020-07-16 21:40:56 -05:00
b880712889 Fix material_preset reference issue 2020-07-16 21:07:21 -05:00
6b0e8e5fd5 [cron] Bump distribution date (2020-07-17) 2020-07-17 00:09:09 +00:00
11e29754e6 Sanity-check BABYSTEP_MULTIPLICATOR_* 2020-07-15 23:55:55 -05:00
ed3df41a7e Broadcast host actions
Fixes #18565
2020-07-15 23:55:48 -05:00
0223ca8abb Fix SKR 1.4 LCD / ADC Keypad sanity-check (#18670) 2020-07-15 21:46:46 -05:00
05c999a809 [cron] Bump distribution date (2020-07-16) 2020-07-16 00:11:04 +00:00
246eac0c82 Fix Hotend Idle Timeout trigger (#18657) 2020-07-15 02:46:04 -05:00
ef90cb7c97 PLR followup 2020-07-15 01:20:52 -05:00
76b67d55e2 Fix some Power Loss Recovery behaviors (#18558) 2020-07-15 01:14:03 -05:00
55e519a06f General cleanup 2020-07-14 21:27:49 -05:00
e78f19bc87 Clean up DWIN code 2020-07-14 21:15:14 -05:00
2d33a9fd7c Add REPORT_FAN_CHANGE as an option 2020-07-14 21:15:14 -05:00
b40440cf38 Tool-change debug option 2020-07-14 21:15:14 -05:00
3513ea7ae1 Specify ststm32 @ 6.1.x 2020-07-14 21:15:14 -05:00
0451e43adb [cron] Bump distribution date (2020-07-15) 2020-07-15 00:14:27 +00:00
95b76a65c3 Increase STM32F1 Servo Timer Interrupt Priority (#18637) 2020-07-14 19:07:27 -05:00
Leo
c9718504c5 Fix leveling "Point n of 3" message (#18639) 2020-07-14 17:02:38 -05:00
b73ac40fa3 LPC fix NeoPixel fork 2020-07-14 15:15:19 +01:00
0e1cb10909 Fix / improve menu items (#18644) 2020-07-13 19:59:32 -05:00
b670001269 [cron] Bump distribution date (2020-07-14) 2020-07-14 00:09:09 +00:00
7a0af01e69 Creality V4 cleanup 2020-07-13 16:10:38 -05:00
7ed66d06a0 LiquidCrystal@1.0.0 for LPC 2020-07-12 22:35:13 -05:00
0f6826ffc0 [cron] Bump distribution date (2020-07-13) 2020-07-13 00:09:18 +00:00
56c3deb423 Fix G35 output formatting (#18631) 2020-07-12 13:43:52 -05:00
2c238e4fc2 Option for extra endstop check (#18424) 2020-07-12 13:16:56 -05:00
4457b9d5d2 Clarify MICROSTEP_MODES 2020-07-12 03:20:06 -05:00
d09347d603 [cron] Bump distribution date (2020-07-12) 2020-07-12 00:09:12 +00:00
c1b2379204 Specify supported library versions 2020-07-11 07:42:35 -05:00
5e0958edbf Fix pid_debug_flag 2020-07-11 07:14:54 -05:00
c4dd0082a1 Option to assist thermocouple debug (#18621) 2020-07-11 00:23:48 -05:00
c765bb05d7 [cron] Bump distribution date (2020-07-11) 2020-07-11 00:11:31 +00:00
b6051efe5b Capitalize "G-code" 2020-07-10 01:35:37 -05:00
8f725e25b5 Fix CHITU_F103 pio.board name (#18486) 2020-07-09 22:51:04 -05:00
e35a1d396f Fix Chitu V6 with LVGL UI (#18608) 2020-07-09 22:49:08 -05:00
69490e1122 Fix CMSIS / USB-FD regression (#18602) 2020-07-09 22:45:06 -05:00
b64113411c Add current offset for POWER_MONITOR sensor (#18600) 2020-07-09 22:43:04 -05:00
0f64e7912f [cron] Bump distribution date (2020-07-10) 2020-07-10 00:08:58 +00:00
d884d1eda8 "M122 I" to reinitialize TMC (#18571) 2020-07-09 17:48:06 -05:00
b0c6cfb051 MarlinUI support for up to 5 Material Presets (#18488)
- Add `I` preset parameter to `G26`, `M106`, `M140`, and `M190`.
- Extend menu items to permit a string interpolation.
- Keep material names in a list and interpolate in menu items.
- Extend material presets to support up to 5 predefined materials.

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-09 03:11:57 -05:00
abc5c93986 Clean up some MMU comments 2020-07-09 02:13:32 -05:00
95c2cc3966 Remove outdated comment (#18597) 2020-07-09 01:43:59 -05:00
73fc0778b8 Consolidate probe clearance, add section debug (#18576)
* Better section / function log
* Add do_z_clearance motion function
2020-07-08 21:44:21 -05:00
5513e67512 2.0.5.4 : Use ststm32 < 6.2 2020-07-08 19:36:09 -05:00
0eab9fc08c Fix missing controller fan include 2020-07-08 19:21:48 -05:00
ca78a57b1d [cron] Bump distribution date (2020-07-09) 2020-07-09 00:15:37 +00:00
915847b75a Add Cap:RUNOUT
Co-Authored-By: Julius ter Pelkwijk <mrseeker@users.noreply.github.com>
2020-07-08 06:53:03 -05:00
8a55f9405c Fix some comments 2020-07-08 06:53:03 -05:00
c2e0e61fe8 Fix User Temp Sensor (1000), reversed Pt100 / Pt1000 (#18590) 2020-07-08 06:28:32 -05:00
1815866877 Show fixed V in Power Display with no V sensor (#18579) 2020-07-08 05:02:40 -05:00
354a9e5970 Lock threads updated 2020-07-08 04:38:35 -05:00
f52a1eb111 Update Chinese (zh_CN) language (#18580) 2020-07-08 01:15:05 -05:00
d6c177008f SKR 1.4 alert for unsupported LCD 2020-07-08 00:03:20 -05:00
67b2b78717 Fix warning with PIO 2020-07-08 00:03:20 -05:00
759d63d76a Tweak PLR debug 2020-07-08 00:03:20 -05:00
35bb616d32 [cron] Bump distribution date (2020-07-08) 2020-07-08 00:08:30 +00:00
588d40aedf Fix typo in Configuration_adv.h (#18570) 2020-07-07 12:55:01 +01:00
ea94716a87 Combine command macros 2020-07-07 02:30:26 -05:00
d6682c8609 Whitespace cleanup 2020-07-07 02:30:26 -05:00
9546847dc1 Temp Residency followup 2020-07-07 01:51:09 -05:00
d3b2c09221 [cron] Bump distribution date (2020-07-07) 2020-07-07 00:08:30 +00:00
12e7106a8a Update and fix POWER_MONITOR (#18561) 2020-07-06 18:53:26 -05:00
ea8c3a9388 Reduce 'first loop' temperature residency time (#18421)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-06 18:52:21 -05:00
378b5685b3 0.7.1 <= TMCStepper <= 0.7.9 (#18564) 2020-07-06 17:51:36 -05:00
9a0b9de3ba Scale runout distance setting for editable range (#18567) 2020-07-06 17:48:55 -05:00
9ee891c4a6 Fix TMC homing phase coils alignment (#18528)
Co-authored-by: Fabio Santos <fabiosan@live.com>
2020-07-06 17:32:33 -05:00
6f14d2d37f Add Lerdge S,X,K (#18302) 2020-07-06 17:08:52 -05:00
af8be58d92 Fix broken POWER_LOSS_RECOVERY prompt (#18557)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-07-06 01:18:49 -05:00
764fc81761 Use Material Preset 1 for PID autotune (#18446)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-06 01:17:40 -05:00
9f5b8c9bbc Get SAMD51 CXX flags from script 2020-07-06 00:12:13 -05:00
e48489482c Filament state followup 2020-07-06 00:11:49 -05:00
ee4910c5d7 Temporarily use patched lock-threads 2020-07-05 19:56:33 -05:00
62c00aac2c [cron] Bump distribution date (2020-07-06) 2020-07-06 00:08:44 +00:00
a6b8b12a6a Simplify home_z_safely, respect HOME_AFTER_DEACTIVATE 2020-07-05 18:01:28 -05:00
c02451b602 Filament Runout Inverting => State (#18537)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-05 17:42:19 -05:00
c8f7aceb20 STM32: No compile-time check for PWM_PIN (#18539)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-05 16:05:47 -05:00
dc6d8357a6 Reduce string duplication 2020-07-05 16:00:32 -05:00
0fad9535d1 Add comment to M412 2020-07-05 15:58:12 -05:00
f9b6c504df Minor pins cleanup 2020-07-05 15:58:12 -05:00
52a0895635 Fix stall sensitivity adjustment for FTDI screens (#18554) 2020-07-05 15:50:05 -05:00
db0436cc61 Fix Neopixel set_color (#18544) 2020-07-05 15:47:02 -05:00
2266a4c68a Add CI for pushed commits (#18549) 2020-07-05 15:46:00 -05:00
697ef2636e Add CI for pushed commits
Co-Authored-By: thisiskeithb <13375512+thisiskeithb@users.noreply.github.com>
2020-07-05 15:45:14 -05:00
81cc803ade Update actions on bugfix branch 2020-07-05 15:41:29 -05:00
67db7c0294 Probing points followup (#18552) 2020-07-05 15:32:04 -05:00
481b8ff2d9 Limit actions to main 2020-07-05 15:23:07 -05:00
ea520e670a Fix "Probing mesh point" message
Closes #17770

Co-Authored-By: Jan-Gerard van der Toorn <jan-gerard@users.noreply.github.com>
2020-07-05 01:03:49 -05:00
6df927d3b2 Fix thermistors exist-for-reading tests (#18533)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-07-04 20:04:31 -05:00
6eb19cef11 Fix "'ubl' not declared" error (#18541) 2020-07-04 19:18:11 -05:00
aa40deb901 [cron] Bump distribution date (2020-07-05) 2020-07-05 00:09:15 +00:00
7bf89f2b9f Two lock-closed per day 2020-07-04 17:35:48 -05:00
ed7110838e Patch Bad PR action 2020-07-04 17:32:58 -05:00
7ca0a7df19 PID Accelerated Edit (#18532) 2020-07-04 15:11:01 -05:00
3641972d0d [cron] Bump distribution date (2020-07-04) 2020-07-04 00:08:37 +00:00
91dc74ff16 M150 I to set Neopixel by index (#18490) 2020-07-03 16:33:09 -05:00
bb89e33e24 FIx Sanguino/1284p board_upload.maximum_size (#18502) 2020-07-03 16:18:09 -05:00
382c566a77 Fix env:mks_robin_nano35 (#18516) 2020-07-03 11:51:44 -05:00
7448b65567 Fix axis name in serial output (#18522) 2020-07-03 11:49:16 -05:00
90380d5664 Ensure Git applies Unix line-endings in tests (#18495) 2020-07-03 10:39:03 -05:00
8c205c5ff6 FYSETC OLED followup (#18519) 2020-07-03 10:31:25 -05:00
f6a2b64091 Clean up LCD Manual Move / UBL Mesh Edit (#18373) 2020-07-03 09:53:22 -05:00
2c15a787c7 Option to set manual Babystepping distance in mm (#18503)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-07-03 09:24:41 -05:00
097347b575 Add FYSETC 2.42 inch OLED support (#18485) 2020-07-02 20:33:52 -05:00
e401b0c8ee Keep filament runout pin for Creality Melzi (#18504) 2020-07-02 19:32:06 -05:00
299d1fea24 [cron] Bump distribution date (2020-07-03) 2020-07-03 00:08:52 +00:00
842dea4bd5 Updated lock / unlock actions 2020-07-02 17:38:31 -05:00
7b6629c08c Extend thermistor 1047 to 500°C 2020-07-01 23:07:44 -05:00
e25da63721 Tweak stepper shutdown test 2020-07-01 22:30:48 -05:00
652c75ceb9 [cron] Bump distribution date (2020-07-02) 2020-07-02 00:08:43 +00:00
c43bbcce15 Enforce sensor range for temperature target (#18465)
* Mitigate stepper timeout

* Add CHAMBER PWM code

* Structured thermistor tables

* Fix reversed sensor ranges

* Prevent temps outside sensor range
2020-07-01 16:27:28 -05:00
70fa4c9323 Per-Hotend Default PIDs (#18483) 2020-07-01 16:18:20 -05:00
e5bc9d31cc Add TFT_LVGL_UI support (#18438) 2020-07-01 01:30:24 -05:00
39105384ba Permit independent X2,Y2,Z2,Z3,Z4 endstop inverting (#18481) 2020-07-01 01:22:34 -05:00
d7e06198c5 Hide menu item with no fan (#18470) 2020-07-01 01:14:18 -05:00
992dc14c86 Fix FYSETC CHEETAH V1.2 SD re-insert (#18474)
Include this board with other Cheetah stepper reset.
2020-07-01 01:13:00 -05:00
21cc924b75 Fix missing parenthesis (#18473) 2020-07-01 01:10:46 -05:00
2d6c17b044 [cron] Bump distribution date (2020-07-01) 2020-07-01 00:08:43 +00:00
34b84d3e63 [cron] Bump distribution date (2020-06-30) 2020-06-30 00:06:54 +00:00
bfcf7ac2fd Use "reset reason" defines (#18462) 2020-06-29 01:02:36 -05:00
69b5b91c91 MKS Robin Nano flash-based EEPROM (#18466) 2020-06-29 00:59:08 -05:00
ca4ade4c44 [cron] Bump distribution date (2020-06-29) 2020-06-29 00:07:30 +00:00
48151d1778 ClosedLoop as singleton 2020-06-28 14:35:23 -05:00
30ee0d3800 Suppress unused var warning 2020-06-28 14:02:44 -05:00
f4e15967e8 Tweak pins formatting 2020-06-28 00:13:42 -05:00
ed96b507b9 Russian, Ukranian for wide LCD (#18433) 2020-06-27 23:59:02 -05:00
29753baeee Adjustable delta_diagonal_rod_trim (#18423) 2020-06-27 23:53:44 -05:00
31349fd69a Fix "probing failed" false positives (#18435) 2020-06-27 23:09:15 -05:00
59e4de8a55 Add Romanian language (#18455)
Co-authored-by: cristyanul <47246451+cristyanul@users.noreply.github.com>
2020-06-27 22:59:44 -05:00
3b80690a71 ExtUI additions (#18447)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-27 22:02:28 -05:00
c1dcc56a0b Tool Change Migration fixes and debugging (#18448) 2020-06-27 21:57:01 -05:00
e392745c86 Update language fonts 2020-06-27 19:08:55 -05:00
ad1470b5d2 [cron] Bump distribution date (2020-06-28) 2020-06-28 00:07:10 +00:00
8474050adb [cron] Bump distribution date (2020-06-27) 2020-06-26 19:31:07 -05:00
a907e15ae6 Allow larger ADC debounce
Reference #17205
2020-06-26 19:31:07 -05:00
319e93f55d Patch some DGUS warnings 2020-06-26 18:53:44 -05:00
5a96695ead Fix Fan Speed menu items (#18400) 2020-06-26 18:10:11 -05:00
90135803a3 Update Brazilian Portuguese language (#18411) 2020-06-26 02:09:30 -05:00
2330ee48f2 BTT SKR Pro runout pins (#18416) 2020-06-26 01:46:31 -05:00
ce3fb61604 SAMD51 cleanup (#18419) 2020-06-26 01:39:49 -05:00
c6a066c0be Update MKS Robin Nano auto-build env (#18417) 2020-06-26 01:37:22 -05:00
aae5f7229c [samd51] Manifest assigned timers priority (#18402) 2020-06-26 01:23:39 -05:00
834c265e2c Update Italian language (#18414) 2020-06-26 01:22:32 -05:00
452072cc08 Fix typo in DWIN, preheat array 2020-06-25 22:56:26 -05:00
f445bc26e5 Minor LCD cleanup, improvement 2020-06-25 22:23:22 -05:00
520c0ab96b [cron] Bump distribution date (2020-06-26) 2020-06-26 00:07:40 +00:00
4ace981ba0 Clean up preheat edit items 2020-06-25 16:16:21 -05:00
859ccd2e28 NO_LCD_REINIT for FSMC (or, no SD_DETECT_PIN) 2020-06-24 20:15:23 -05:00
43a994e0df Fix material preset editing 2020-06-24 20:15:23 -05:00
d0f2fde920 Fix material preset type 2020-06-24 19:47:32 -05:00
4275466f49 Fix issues with no hotend / bed / fan (#18395) 2020-06-24 19:44:50 -05:00
b0aad414ec Use Preheat 1 as M303 default (#18407) 2020-06-24 19:20:07 -05:00
eb5f8b693b [cron] Bump distribution date (2020-06-25) 2020-06-25 00:06:53 +00:00
c135db1ce7 Display PID Autotune status (#18408) 2020-06-24 15:04:39 -05:00
2a650a2793 TFT_LITTLE_VGL_UI followup (#18410) 2020-06-24 14:54:39 -05:00
c3d2ffc09c Board-based ST7920 delays 2020-06-23 20:37:28 -05:00
1fb2fffdbf General cleanup 2020-06-23 19:59:38 -05:00
2a9ad52ab1 Run close-stale once per day 2020-06-23 19:59:38 -05:00
a73e61078d Add Close / Lock actions 2020-06-23 19:58:00 -05:00
f011c6968b [cron] Bump distribution date (2020-06-24) 2020-06-24 00:06:36 +00:00
d55a53f9bb Add maintenance actions 2020-06-23 16:54:20 -05:00
ea569ca29e Update LPC176x platform version (#18392) 2020-06-23 22:30:35 +01:00
a0bbdde421 Use libraries from the registry 2020-06-23 16:13:21 -05:00
40fce56585 Move tests up one level 2020-06-23 16:13:21 -05:00
2139141f99 Graphical LCD note 2020-06-23 16:13:21 -05:00
25c7c43a82 Add SERIAL_FLOAT_PRECISION option (#18367) 2020-06-22 21:12:45 -05:00
1ea4e393c9 No 'probing failed' with retry (#18379) 2020-06-22 19:50:46 -05:00
7434d40f8d [cron] Bump distribution date (2020-06-23) 2020-06-23 00:06:49 +00:00
e65e2f33f1 Fix ExtUI automatic font scaling (#18377) 2020-06-22 15:41:01 -05:00
07966ea82b Fix LPC176x RGB NEOPIXEL startup (#18380) 2020-06-22 15:38:51 -05:00
3bfbd47c6d Fix 3-point middle point (#18383) 2020-06-22 15:37:14 -05:00
e52afa8b19 Better STM32 Tone timer int priority (#18385) 2020-06-22 15:30:45 -05:00
819e48972d Improve U8G+SPI delay override (#18386)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-06-22 15:27:01 -05:00
b6cd8b230e TMCStepper 0.7.0 followup (#18388) 2020-06-22 14:25:46 -05:00
2b286a101a Quickie G35 patch 2020-06-21 22:54:26 -05:00
8982756b40 Misc tweaks 2020-06-21 22:17:48 -05:00
31167c158b TMCStepper 0.7.0 2020-06-21 22:17:48 -05:00
d236b3dcf5 Clean up setup 2020-06-21 21:24:36 -05:00
f604560c63 Tweak dogm_Statusscreen.h 2020-06-21 19:16:36 -05:00
9944403cbf Add Cap:ARCS 2020-06-21 19:15:32 -05:00
106cf0d71e [cron] Bump distribution date (2020-06-22) 2020-06-22 00:07:01 +00:00
ac50a355a3 G35: Bed tramming assistant (#16897) 2020-06-21 04:27:51 -05:00
900d4cf8e7 Allow STM32 HAL_TIMER_RATE override (#18374) 2020-06-21 03:56:00 -05:00
e424dfc885 BigTreeTech SKR Pro 1.2 (#18366) 2020-06-21 03:46:31 -05:00
8000182bb9 One loop call to ui.update 2020-06-21 02:40:41 -05:00
67db50c699 Fix mfpub final checkout 2020-06-21 00:45:25 -05:00
1399d75022 [cron] Bump distribution date (2020-06-21) 2020-06-21 00:07:24 +00:00
6350b98fc2 Update Marlin.ino config info 2020-06-20 18:36:06 -05:00
eed32457e3 [cron] Bump distribution date (2020-06-20) 2020-06-20 00:06:55 +00:00
8225d66b55 Consolidate MKS Robin / SKR Mini E3 pins (#18354) 2020-06-19 18:32:05 -05:00
bc9e5e2abc Fix _CAN_HOME (Y homing) bug (#18356) 2020-06-19 18:19:29 -05:00
eddd0d91a4 Fix BIQU BQ111-A4 pins (#18361) 2020-06-19 18:14:22 -05:00
d8c3aed038 Sanity-check the chamber thermistor pin 2020-06-19 14:01:24 -05:00
a173f33997 [cron] Bump distribution date (2020-06-19) 2020-06-19 00:06:57 +00:00
d2363c5b35 Clean up RUMBA32 PlatformIO & tests (#18271) 2020-06-18 17:26:40 -05:00
ef2657d565 Robin Nano updates (#18347) 2020-06-18 17:23:46 -05:00
88e4dffe88 Fix PID autotune timeout (#18352) 2020-06-18 16:05:12 -05:00
8e20691f42 Fix Core axis babystepping (#18342) 2020-06-18 15:28:52 -05:00
424569b4c4 Power monitor and display (#17437) 2020-06-18 15:23:03 -05:00
c8e99d572c [cron] Bump distribution date (2020-06-18) 2020-06-18 00:06:49 +00:00
fa3cfa19be Fix: ANALOG_OK always fails (#18334) 2020-06-17 16:08:39 -05:00
f13ca24ade Shift/encoder pins not needed for ADC Keypad (#18335) 2020-06-17 16:06:13 -05:00
031f308d39 Fix DWIN typo 2020-06-17 13:00:38 -05:00
c7b553c7b2 Optional move-to-center after UBL G29 J (3-point) (#17964)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-17 12:43:17 -05:00
697b5fddf7 Update FYSETC S6 variant (#18331) 2020-06-16 22:55:09 -05:00
e58c2d27fc [cron] Bump distribution date (2020-06-17) 2020-06-17 00:06:31 +00:00
23806aeb3c Fix non-PWM spindle/laser compile (#18311)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
Co-authored-by: Luu Lac <45380455+shitcreek@users.noreply.github.com>
2020-06-16 15:49:32 -05:00
0b30de1b8e M73 remaining time for MKS UI (#18326) 2020-06-16 14:33:17 -05:00
1c13428d84 Fix CMSIS / USB-FD name conflicts (#18327) 2020-06-16 14:28:28 -05:00
caeba33d28 Sensor 502 and PTC cleanup 2020-06-16 14:08:51 -05:00
51be595573 Fix core babystep compile 2020-06-16 13:48:14 -05:00
2603a237f9 Add MKS LCD12864 A/B Controller Support (#18120) 2020-06-16 02:43:09 -05:00
749589b088 Fix Fysetc SD FW bootloader addr / size requirement (#18246) 2020-06-16 02:39:53 -05:00
c4b11e03b9 Fix DGUS screen bug (#18320) 2020-06-16 02:38:22 -05:00
c81ef492e3 Fix u8g draw character Y position (#18322) 2020-06-16 02:19:42 -05:00
8b96d885e4 Ender 3 V2 followup 2020-06-16 02:14:42 -05:00
b5f5736c90 Ender 3 V2 followup 2020-06-16 02:10:46 -05:00
f4c258dc23 Creality Ender 3 v2 (#17719) 2020-06-16 01:45:27 -05:00
642112d3eb Add MKS UI (TFT_LITTLE_VGL_UI) (#18071) 2020-06-15 21:05:33 -05:00
6d571a547c Clean up TFT / Touch code (#18296) 2020-06-15 20:51:12 -05:00
884e2146a1 Rename part 2
Co-Authored-By: avion23 <avion23@users.noreply.github.com>
2020-06-15 20:46:52 -05:00
420efc18f4 Fix chitu_f103.json (make lowercase) 2020-06-15 20:46:52 -05:00
8358f3eadb Chitu V5 with extra GPIO init (#18299)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-06-15 20:00:44 -05:00
636813a83a [cron] Bump distribution date (2020-06-16) 2020-06-16 00:17:01 +00:00
fe46704848 Fix UTF char cutoff at DOGM edge (#18294) 2020-06-15 19:07:46 -05:00
a4b46eaf8f Add JD_HANDLE_SMALL_SEGMENTS option (#18316) 2020-06-15 18:54:00 -05:00
aea60d9450 Clean up trailing spaces 2020-06-15 18:11:32 -05:00
138d0622ee Fix CI test for FYSETC (#18314) 2020-06-15 16:46:55 -05:00
955971486b Fix toolchange compile error (#18312) 2020-06-15 16:26:09 -05:00
fc99665c01 Fix Max Jerk edit menu (#18310) 2020-06-15 16:01:21 -05:00
bc43a28587 Bring thermistor names up to date (#18303) 2020-06-15 16:00:19 -05:00
10601a932a Zonestar P802M bed thermistor (#18289)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-06-14 20:09:25 -05:00
e1d07f9541 [cron] Bump distribution date (2020-06-15) 2020-06-15 00:06:35 +00:00
9a52193cc6 Fix GTM32 Rev B LCD pins (#18293) 2020-06-14 01:02:04 -05:00
5ba1cbaf8e Update formatting rules 2020-06-14 00:01:37 -05:00
8609f5b2f2 [cron] Bump distribution date (2020-06-14) 2020-06-14 00:06:57 +00:00
1e41998dc6 Fix Chinese language typo (#18268) 2020-06-13 16:34:05 -05:00
7db3391524 Remove DOGM bottom horizontal line/separator (#18273) 2020-06-13 16:33:08 -05:00
62db10919a Update French language (#18276) 2020-06-13 16:31:24 -05:00
3e5158c430 Move Case Light to LEDs submenu (#18290) 2020-06-13 16:29:43 -05:00
2668288e6c [cron] Bump distribution date (2020-06-13) 2020-06-13 00:06:55 +00:00
0c4cf2ce32 Update formatting rules 2020-06-12 16:33:32 -05:00
40f55f8b98 Chitu variant for disk-based update (#18264) 2020-06-11 21:53:26 -05:00
0a49ad1ccf TFT 3x upscale followup (#18256) 2020-06-11 21:42:19 -05:00
1d504e596d Touch-to-jog on edit screens (#18266) 2020-06-11 21:21:18 -05:00
eef2931150 Fix PTC calculation (#18265) 2020-06-11 20:46:25 -05:00
2ddd7d2d8d Fix extra comma typo (#18262) 2020-06-11 20:44:48 -05:00
92435ef5ea Tenlog D3 Hero 7-axis board (#18263) 2020-06-11 20:43:28 -05:00
c12111e2cc Improve and extend RUMBA32 (#18249) 2020-06-11 20:28:20 -05:00
ea20c77df9 Clean up envs / variants 2020-06-11 20:26:24 -05:00
85e48bbb0d [cron] Bump distribution date (2020-06-12) 2020-06-12 00:06:39 +00:00
c6f3511d84 Touch-select MarlinUI menu items (#18239) 2020-06-11 16:13:52 -05:00
fe969ec6d3 FTDI whitespace tweaks 2020-06-11 15:27:51 -05:00
bbe8400c5a [cron] Bump distribution date (2020-06-11) 2020-06-11 00:06:30 +00:00
b1609e82a0 Add Bed PID edit/autotune menu items (#18250)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-10 18:37:10 -05:00
67305f7976 Add "Bed" / "Chamber" substitutions (#18255) 2020-06-10 18:35:56 -05:00
3bf990ec34 PTC: Extend options, fix probing bugs (#18253) 2020-06-10 18:25:17 -05:00
2de22aae2d Melzi (Creality) pins notes (#18251) 2020-06-10 17:19:39 -05:00
e2cc966621 Tronxy X5SA (V5 / V6 boards) (#18243) 2020-06-10 17:16:22 -05:00
75119c433a Default filament 1.75mm 2020-06-09 23:20:20 -05:00
a9fc8c3f2a [cron] Bump distribution date (2020-06-10) 2020-06-10 00:06:54 +00:00
3eda8b5a8f Fix DOGM / TMF buttons Y position (#18245) 2020-06-09 16:53:22 -05:00
c352aeb32e Remove "dev" branch reference (for now) (#18242) 2020-06-09 15:27:57 -05:00
ca5a8ea827 Add G-code "backspace" support 2020-06-08 20:17:44 -05:00
265ab19ed2 TFT 2x-3x scale, Anycubic, TronXY TFT support (#18224) 2020-06-08 20:02:01 -05:00
bcf7ac7483 STM32F1: Fix SDIO read errors (#18228) 2020-06-08 19:59:44 -05:00
63c280a6ca Robin E3/E3D EEPROM size (#18230) 2020-06-08 19:56:06 -05:00
f2b2b391db Fix EEPROM struct (#18234) 2020-06-08 19:54:39 -05:00
0fa345f98f Laser updates followup (#18237)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-08 19:53:39 -05:00
2f28e8ba13 [cron] Bump distribution date (2020-06-09) 2020-06-09 00:06:39 +00:00
bac760207c Add volumetric extrusion limit (#17017) 2020-06-08 03:24:46 -05:00
8994cc8b26 Fix BTT SKR Pro 1.0 UART4/5 (#18222) 2020-06-08 03:04:52 -05:00
eda2fd8dbe Improvements for Laser / Spindle (#17661) 2020-06-08 00:47:31 -05:00
5ac66b0f95 Rumba in the junga 2020-06-07 23:45:25 -05:00
215b400038 Allow SDIO clock/retry overrides (#18223)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-07 23:35:52 -05:00
d7561c4b98 Fix rumba32 environments
Followup to #18116
2020-06-07 22:34:39 -05:00
cfd31ff70e Add HAS_FILAMENT_RUNOUT_DISTANCE 2020-06-07 21:55:09 -05:00
45488a431a Clean up whitespace 2020-06-07 21:52:06 -05:00
1a5663fbf4 PIO base STM32 environment (#18116) 2020-06-07 20:29:10 -05:00
89704ce7f9 Support STM32 platform up to 6.1.x 2020-06-07 19:50:22 -05:00
19024306fc Robin E3D Flash-based EEPROM (#18219) 2020-06-07 19:48:18 -05:00
941d72fd8d Update Slovak language (#18210) 2020-06-07 19:44:04 -05:00
2840e3a8f9 Update Chinese (CH) language (#18211) 2020-06-07 19:43:30 -05:00
968979f42d [cron] Bump distribution date (2020-06-08) 2020-06-08 00:06:48 +00:00
859b047a23 Revert M290 report style (#18202) 2020-06-07 18:44:35 -05:00
8313302266 [cron] Bump distribution date (2020-06-07) 2020-06-07 00:06:51 +00:00
9a0b0d8469 Add a code formatter 2020-06-06 04:04:35 -05:00
fda1ef2dd3 [cron] Bump distribution date (2020-06-06) 2020-06-06 00:06:30 +00:00
bf25cc8412 Add a script to id configs 2020-06-05 16:20:27 -05:00
6371782263 Add HAS_MULTI_SERIAL conditional 2020-06-05 16:20:27 -05:00
Leo
f350e9d0cb Shorter BTT board names (for LCD info) (#18139) 2020-06-04 21:29:47 -05:00
9e2f142391 Clean up Melzi LCD timing defaults (#18187)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-04 19:55:39 -05:00
fcb8c5a1c1 Fix G34 move in wrong direction (#18188) 2020-06-04 19:09:01 -05:00
a500862dc6 [cron] Bump distribution date (2020-06-05) 2020-06-05 00:08:38 +00:00
2d1cbf8e1d Add comment to M281 2020-06-04 03:14:41 -05:00
d5bfc5b07b Fix Mightyboard envs (#18194) 2020-06-03 23:23:53 -05:00
076b2112a3 Fix spindle power LCD display (#18189) 2020-06-03 23:20:19 -05:00
6f90967780 [cron] Bump distribution date (2020-06-04) 2020-06-04 00:06:15 +00:00
8477dbf65d Update FYSETC STM32F103 ldscript and script (#18179) 2020-06-02 21:04:22 -05:00
419f31f371 SoftwareSerialM for MEEB (#18178) 2020-06-02 21:03:59 -05:00
ce62209bce Probe margin. Bump config version (#18140)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-06-02 20:41:50 -05:00
a0b27e6702 Fix JD LUT math & bugs (#18175) 2020-06-02 19:30:43 -05:00
5f9624f70b Ensure XY known for Z safe homing
Addressing #18143
2020-06-02 19:13:01 -05:00
142e65192d [cron] Bump distribution date (2020-06-03) 2020-06-03 00:06:23 +00:00
a1f3d2f3cd Move set_all_z_lock to Stepper 2020-06-02 02:37:33 -05:00
c9a260ee12 MEEB cleanup, whitespace
Followup to #18138
2020-06-02 02:34:08 -05:00
ad08722d0d Chirp followup 2 (#18176)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-06-01 22:40:51 -05:00
7119596170 G-code line number for each serial port (for TFTs) (#18165) 2020-06-01 22:19:10 -05:00
53cb2963dc Fix chirp with TOUCH_BUTTONS 2020-06-01 19:42:56 -05:00
544f7202a3 [cron] Bump distribution date (2020-06-02) 2020-06-02 00:06:17 +00:00
33d1e77e2e Allow pins override of *_TIMER_NUM and HAL_*_TIMER_ISR (#18128)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-06-01 18:33:30 -05:00
2bf63e29c6 Support for MEEB 3DP board (#18138) 2020-06-01 18:25:13 -05:00
48d9a5367b Chirp followup 2020-06-01 17:06:38 -05:00
785f442c8c Group some sanity checks 2020-06-01 17:03:58 -05:00
bda380513a Add valid() to recovery.info 2020-06-01 17:02:58 -05:00
e380498512 Fix Z homing with custom probe pins (#18150) 2020-06-01 00:19:36 -05:00
6515100807 [cron] Bump distribution date (2020-06-01) 2020-06-01 00:06:36 +00:00
657eeab013 Improve some probe sanity errors 2020-05-31 01:40:33 -05:00
dcb90a8d61 No SERIAL_STATS for LPC, STM32 (#18145) 2020-05-31 00:45:04 -05:00
d2d52e3c34 Declare MSerial6 (etc.) for STM32 (#18149) 2020-05-31 00:43:37 -05:00
815c8d2b55 Improve G2 / G3 motion accuracy (#18144) 2020-05-31 00:26:15 -05:00
46112b9d50 Adjust Melzi ST display timing (#18160) 2020-05-31 00:21:08 -05:00
801f99edad SDCARD_READONLY (#17884) 2020-05-30 23:59:29 -05:00
2ad3da98d4 Fix some spelling 2020-05-30 23:28:30 -05:00
3430d45f53 BTT SKR Mini E3 V2 (#18088)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-05-30 23:27:21 -05:00
7628895ac8 Apply misc TERN 2020-05-30 22:34:30 -05:00
6ee81f0d26 eeprom_init from STM32F1/access_start 2020-05-30 22:34:30 -05:00
200ba87d63 [cron] Bump distribution date (2020-05-31) 2020-05-31 00:06:32 +00:00
30832ce915 [cron] Bump distribution date (2020-05-30) 2020-05-30 00:06:08 +00:00
9b92d5fb0e [cron] Bump distribution date (2020-05-29) 2020-05-29 00:06:03 +00:00
a740b6b318 More 'extend'ed environments (#18118)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-05-28 12:52:13 -05:00
11ef4833f8 [cron] Bump distribution date (2020-05-28) 2020-05-28 00:08:57 +00:00
84c43e9ee7 Fix test comments 2020-05-27 13:46:01 -05:00
4724af1011 Better home for 'chirp' 2020-05-27 13:40:22 -05:00
3bf0d8d161 Allow disable of LCD click 2020-05-27 13:17:30 -05:00
a49319f3dd Fix FYSETC_AIO_II build (#18124)
BOARD_FYSETC_AIO_II also needs this header for the reset_stepper_drivers function
2020-05-27 17:06:32 +01:00
094bf40063 [cron] Bump distribution date (2020-05-27) 2020-05-27 00:07:59 +00:00
6c994002af No SD_CHECK_AND_RETRY with USE_USB_COMPOSITE (STM32F103 + SDIO) (#18108)
* disable SD_CHECK_AND_RETRY when USE_USB_COMPOSITE is enabled

* Update Sd2Card.cpp

* Disable SD_CHECK_AND_RETRY with USE_USB_COMPOSITE

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-05-26 00:44:12 -05:00
38ccc769f7 Emergency Parser for STM32 (#18095) 2020-05-26 00:43:29 -05:00
8b320f9095 [cron] Bump distribution date (2020-05-26) 2020-05-26 00:07:25 +00:00
f402ab7afb Limit MAX31865 library to <1.2 (#18089) 2020-05-25 18:39:51 -05:00
5fefecc526 Use 'extends' for STM32F1, fix lib versions (#18099) 2020-05-25 18:24:16 -05:00
f3bf343c89 Report fan speed on change (#18013) 2020-05-25 17:46:35 -05:00
5fbea83840 Explicitly optimize x/x in Classic Jerk (#18112)
Can we outsmart the compiler?
2020-05-25 17:29:02 -05:00
f776260d7a Fix OCR / PWM calculation (#18094)
Fixes #17968
2020-05-25 17:14:15 -05:00
de89a4b7c1 Add PICA Servo / E1 pins (#18100) 2020-05-25 17:09:38 -05:00
7d7f58c3e3 Fix Mightyboard PIO env (#18098) 2020-05-25 16:24:50 -05:00
fe7452c5cb TMC serial multiplexer, FYSETC AIO-II (#18080) 2020-05-25 15:48:33 -05:00
8c0c8e4046 8 Extruders + Graphical LCD fix (#18079) 2020-05-25 15:42:31 -05:00
59dfba3bb8 Fix GTR CR10_STOCKDISPLAY pins (#18078) 2020-05-25 15:37:33 -05:00
9bfdc88e52 Provide strcmp_P where needed (#18103) 2020-05-25 15:36:37 -05:00
929b3f6af9 Don't re-reverse sort 2020-05-24 20:17:51 -05:00
0578bbbf5d Marlin: Use strcmp_P 2020-05-24 20:09:30 -05:00
e6e15dd764 [cron] Bump distribution date (2020-05-25) 2020-05-25 00:07:54 +00:00
7554836589 [cron] Bump distribution date (2020-05-24) 2020-05-24 00:08:10 +00:00
dde8fb9efb [cron] Bump distribution date (2020-05-23) 2020-05-23 00:07:39 +00:00
Leo
8292136f77 Move DOGM progress bar up 1px (#18060) 2020-05-22 15:41:32 -05:00
62e903c463 Update "Mac OS X" to "macOS" (#18063) 2020-05-22 15:40:15 -05:00
4f1ebb4440 Fix Due wired EEPROM init (#18074) 2020-05-22 15:37:11 -05:00
461647fcee Use MARLIN_EEPROM_SIZE with E2END as fallback (#18059) 2020-05-22 02:15:40 -05:00
31eb487da5 whitespace 2020-05-22 02:02:11 -05:00
f7346b6ee1 [cron] Bump distribution date (2020-05-22) 2020-05-22 00:04:21 +00:00
8cfcabe146 [cron] Bump distribution date (2020-05-21) 2020-05-21 00:04:28 +00:00
4e51240563 BTT GTR has I2C EEPROM (#18029) 2020-05-20 15:42:45 -05:00
9bf768a3fb Update Italian language (#18049) 2020-05-20 15:39:08 -05:00
60bed3434b Ignore spurious MAX31855K / 6675 thermocouple errors (#18039) 2020-05-20 15:38:29 -05:00
7b2a056656 Update SAMD-RAMPS runout pin (#18048) 2020-05-20 15:31:08 -05:00
0b0ba7dcf6 Fix LCD throttle issue (#18055)
Fixes #18044
2020-05-20 15:28:02 -05:00
7be748b9b7 [cron] Bump distribution date (2020-05-20) 2020-05-20 00:04:09 +00:00
1e32df4c75 Fix Hotend Idle Timeout comment (#18032)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-05-19 02:34:15 -05:00
7696dea1c6 Fix LPC + EXPERIMENTAL_I2CBUS build error (#18040) 2020-05-19 02:29:19 -05:00
bce9527709 Whitespace 2020-05-19 01:32:56 -05:00
63c43de9b4 [cron] Bump distribution date (2020-05-19) 2020-05-19 00:04:18 +00:00
94063e3a87 Fix PID + Thermal Protection combos (#18023) 2020-05-18 13:51:32 -05:00
213d4b890e Hotend Idle Timeout (#16362) 2020-05-18 00:50:35 -05:00
6e01079b48 G29 patch followup 2020-05-17 20:57:16 -05:00
e275cd3798 Update some © 2020-05-17 20:49:24 -05:00
daa5bbc5eb Comment a motion function 2020-05-17 19:40:45 -05:00
fac3a7d147 Fix ABL G29 early BLTouch deploy 2020-05-17 19:40:45 -05:00
c60600ebb9 [cron] Bump distribution date (2020-05-18) 2020-05-18 00:03:57 +00:00
d9077e51e8 Make M421 more versatile 2020-05-17 15:12:08 -05:00
d9593c8ed4 Tweak mesh xy error 2020-05-17 15:12:08 -05:00
c73894308c Tweak M114 D output 2020-05-17 15:12:08 -05:00
b8fe3bbd6d Fix position sync on M420 S0 2020-05-17 15:12:08 -05:00
2ec482a102 MMU2 Extruder Sensor support (#17886) 2020-05-17 14:52:45 -05:00
df04a427f3 Fix BTT002 SPEAKER timer conflict (#18011) 2020-05-17 14:48:07 -05:00
3de1421d72 [cron] Bump distribution date (2020-05-17) 2020-05-17 00:04:07 +00:00
847bdeecaf BOARD_NAME => BOARD_INFO_NAME 2020-05-16 06:02:55 -05:00
45a01a3eca Non-SPI core homing pin tests (#17996) 2020-05-16 01:06:18 -05:00
76a65ffe74 Vertex nano with board K8600 (#17736) 2020-05-15 21:11:28 -05:00
3e73993734 [cron] Bump distribution date (2020-05-16) 2020-05-16 00:04:08 +00:00
64876f7781 [cron] Bump distribution date (2020-05-15) 2020-05-15 00:04:02 +00:00
6ae7a40f99 CoreXY sensorless homing (#17972) 2020-05-14 13:00:47 -05:00
1d654b559d [cron] Bump distribution date (2020-05-14) 2020-05-14 00:03:58 +00:00
6ec89031ee Fix BIGTREE_SKR_PRO tests 2020-05-13 15:37:07 -05:00
5a92462c0f Less ambiguous option comment (#17983) 2020-05-13 14:26:27 -05:00
21bfb94357 Fix FTDI EVE Touch UI typo (#17985) 2020-05-13 14:22:41 -05:00
6d92f56582 FTDI/EVE, pins cleanup for SKR E3/DIP (#17990) 2020-05-13 14:22:03 -05:00
104d020222 [cron] Bump distribution date (2020-05-13) 2020-05-13 00:04:03 +00:00
27beade888 Update EP comment 2020-05-12 16:32:40 -05:00
69d4bc9271 Fix Hungarian language (#17936) 2020-05-12 14:59:19 -05:00
18a01f2c40 Add user's build (_date_ _time_) to M115 output (#17957)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-05-12 14:57:18 -05:00
b88cf2edcb Remove version appendage 2020-05-12 14:48:50 -05:00
2e03c7939c Simplification 2020-05-12 14:48:50 -05:00
219812e3bb Squish microstep_readings 2020-05-12 02:11:32 -05:00
ac6a58010d Reorder RAMBo tests 2020-05-12 02:11:32 -05:00
73e0937f49 Fix HAS_MICROSTEPS if only Z 2020-05-12 02:11:32 -05:00
d853a70556 Remove strcpy compile warning 2020-05-12 02:11:32 -05:00
d4aa197744 Add MAP macro 2020-05-12 02:11:32 -05:00
ab19a27f63 Prevent some macro pitfalls (#17956)
Co-authored-by: espr14 <espr14@users.noreply.github.com>
2020-05-12 01:01:16 -05:00
181739d0d1 Move inline laser state to fix EEPROM error 2020-05-12 00:10:04 -05:00
a06a0c5b88 Fix SKR/GTR PeripheralPins.c (#17937)
* Add a separate GTR board/variant.
* Revert SKR Pro MOSI (before 248b7dfa59).
2020-05-11 23:56:44 -05:00
98fdc67f1d Fixes for FYSETC Cheetah (#17935) 2020-05-11 23:51:07 -05:00
798dc68847 Combine some conditions 2020-05-11 23:27:01 -05:00
c2d66a5df0 Tweak JD + Jerk limit 2020-05-11 23:27:01 -05:00
7664e552f1 Finish DOGM progress bar
Fixes #17940
2020-05-11 23:26:58 -05:00
0fbedf5b4c Fix LPC host actions, add tests
Fixes #17955
2020-05-11 22:15:25 -05:00
df9cad6a53 Correct DEFAULT_MINSEGMENTTIME units 2020-05-11 22:15:25 -05:00
d35dd2a47e Fix babystep / double-click check (#17962) 2020-05-11 22:01:47 -05:00
e6079bd14e Correct endstop noise comment 2020-05-11 20:16:48 -05:00
aecfc05748 Align slightly in M114 detail 2020-05-11 19:24:58 -05:00
8a22ef0c83 G6 Direct Stepping (#17853) 2020-05-11 19:22:41 -05:00
174e41c17d [cron] Bump distribution date (2020-05-12) 2020-05-12 00:19:12 +00:00
2f3077f219 Tests (LPC176x): Emergency Parser (#17967) 2020-05-11 19:14:06 -05:00
1475fd312a M600 R<resume temperature> (#17919)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-05-11 02:06:31 -05:00
4680aa659c EEPROM Flash Leveling enabled for more STM32F4 (#17948) 2020-05-11 01:12:11 -05:00
25aade1cf1 Improve STM32F4 Flash Behavior (#17946) 2020-05-11 01:10:20 -05:00
9d545f1231 Fysetc S6 direct DFU upload (#17943) 2020-05-11 01:07:19 -05:00
3381a4ab03 Fix vector normalization in JD (#17938) 2020-05-11 01:06:35 -05:00
e22e0763d9 Reduce division in JD calc (#17945) 2020-05-10 21:23:51 -05:00
fcd1678a17 Actually apply DGUS_[RT]X_BUFFER_SIZE (#17952) 2020-05-10 21:21:47 -05:00
00e7599c8c Fix host_action_notify and string types (#17953) 2020-05-10 21:19:23 -05:00
3b87fc19e4 Adjust some variants spacing, comments 2020-05-10 19:28:49 -05:00
df7250baa8 [cron] Bump distribution date (2020-05-11) 2020-05-11 00:04:00 +00:00
33127f4476 More conservative Trinamic DIR delay
See #17323

This makes babystepping more reliable and may improve Trinamic motion overall.

Co-Authored-By: chgi <chgi@users.noreply.github.com>
2020-05-10 18:43:00 -05:00
86c1125380 Sanity check 3-point defines
Fixes #17870
2020-05-10 04:52:57 -05:00
e5b0892f08 Fix TERN typo, EXTRA_PROBING
Co-Authored-By: Matthew Kennedy <mattkenn4545@gmail.com>
2020-05-10 04:40:30 -05:00
32dc874928 Tempted by the const of a seg_length 2020-05-10 03:42:58 -05:00
8d3caa9944 Newer TMCStepper better for LPC176x (#17934) 2020-05-10 03:08:01 -05:00
de6a725b04 Fix G2/G3 segment size
Fixes #17348
2020-05-10 02:46:48 -05:00
ba9a9bbe58 Normalize HAL/STM32 targets (#17904) 2020-05-10 01:49:30 -05:00
71b41c963b Better EEPROM alert message 2020-05-10 00:37:19 -05:00
52aa459a2d Improved EEPROM boot error (#17916) 2020-05-10 00:12:56 -05:00
91fe0e1022 Fix line ending in M360 (#17917) 2020-05-09 23:36:04 -05:00
7a9bb6bc86 Remove old M73 / SD comment (#17928) 2020-05-09 23:35:26 -05:00
37f86d9e08 Update Galician language (#17929) 2020-05-09 23:26:06 -05:00
209fd2d0cb Fix SERIAL_ECHO forever bug (#17932) 2020-05-09 23:25:18 -05:00
2af270ca42 Fix M115_GEOMETRY_REPORT extra commas (#17933) 2020-05-09 23:24:15 -05:00
60be3b19be [cron] Bump distribution date (2020-05-10) 2020-05-10 00:03:47 +00:00
a95a60c7ea [cron] Bump distribution date (2020-05-09) 2020-05-09 00:07:15 +00:00
8f3d17699a Init all ESP01 (module) WIFI pins (#17679) 2020-05-08 02:43:53 -05:00
8fd3af0c79 Fix UBL mesh edit grid display (#17897) 2020-05-08 01:26:33 -05:00
34a2fd7b09 DGUS minor fixups (#17901) 2020-05-08 01:24:27 -05:00
703e97b7af Support TMCStepper with MKS Robin Pro (#17908) 2020-05-08 01:19:28 -05:00
a2153c15ee Add TMC driver HW serial defines (#17909) 2020-05-08 01:15:12 -05:00
c262b9c5a3 [cron] Bump distribution date (2020-05-08) 2020-05-08 00:03:24 +00:00
6be76af617 Overrideable CASE_LIGHT_PIN 2020-05-07 14:57:41 -05:00
10e875cd79 [cron] Bump distribution date (2020-05-07) 2020-05-07 00:03:32 +00:00
6947dc139e Fix M503 output formatting (#17893) 2020-05-06 03:40:04 -05:00
7c26a54d3f Fix, clarify LCD_TIMEOUT_TO_STATUS
Replaces #17887

Co-Authored-By: Daniel Callander <knifa@users.noreply.github.com>
2020-05-06 03:34:39 -05:00
1aa9d44783 Format some pins 2020-05-06 01:40:40 -05:00
0332666d38 Fix Cheetah pins alias (#17882) 2020-05-06 01:16:32 -05:00
544b16639e Fix poll_runout_states bug 2020-05-06 01:15:13 -05:00
a4c981469e Extended reporting options (#16741) 2020-05-05 23:34:04 -05:00
9ce950e3c1 Move M114 options down 2020-05-05 20:15:48 -05:00
7a03c5a0c6 Update Italian language (#17888) 2020-05-05 19:20:02 -05:00
9df7992de8 [cron] Bump distribution date (2020-05-06) 2020-05-06 00:03:27 +00:00
39f703310b Move S_FMT to HAL, apply to mixer 2020-05-05 18:12:36 -05:00
7a2cc782b4 Clean up planner modifier methods 2020-05-05 15:38:48 -05:00
852a8d6685 Configurable kill pin state
Co-Authored-By: AbdullahGheith <abdullahgheith@users.noreply.github.com>
2020-05-05 03:31:15 -05:00
3fd8ef52c5 More FTDI EVE fixes (RAMPS, Cheetah) (#17759) 2020-05-05 02:38:06 -05:00
2acdd2fadc Add Mightyboard Mega env (#17861) 2020-05-05 02:25:22 -05:00
973a6990b5 Trailing whitespace 2020-05-05 01:24:35 -05:00
ac5249a76c Update README MCU/boards (#17827) 2020-05-05 01:07:02 -05:00
d2b7671253 No Z stall by default 2020-05-05 00:59:39 -05:00
eeabe66fc4 Some distinct E helpers 2020-05-05 00:52:45 -05:00
39263efef7 Allow more serial parameters 2020-05-04 23:46:38 -05:00
90e1035e9b Define max_e_jerk as array always 2020-05-04 23:10:23 -05:00
97e47b4494 Wrap some macros 2020-05-04 23:08:15 -05:00
65104b7d78 Whitespace, M200 test label 2020-05-04 19:26:46 -05:00
bab37dcfae Add templated j_move_axis 2020-05-04 19:26:46 -05:00
0080305fa6 Tweaks to platformio.ini 2020-05-04 19:26:46 -05:00
7655620fd0 [cron] Bump distribution date (2020-05-05) 2020-05-05 00:03:45 +00:00
c55475e8e7 Fix and combine JD condition 2020-05-04 19:02:08 -05:00
d571a4d389 Relax bed cooling safety check (#17877) 2020-05-04 17:23:35 -05:00
98196673aa Fix setStatusMessage calls (#17879) 2020-05-04 17:19:49 -05:00
9fe781ccaf Tweak powerloss info 2020-05-04 16:37:27 -05:00
b8947ac8a5 More explicit junction/jerk math 2020-05-04 16:13:10 -05:00
2efe28ca59 Minor conditional clean 2020-05-04 16:11:36 -05:00
cd8e6a1ad7 Git attributes for UNIX line endings (#17842) 2020-05-04 15:40:23 -05:00
4c4be32ad7 LPC176x requires USE_SHARED_EEPROM (#17858) 2020-05-04 14:54:33 -05:00
ebe8f2c605 Fix acosx condition (#17846) 2020-05-04 14:39:51 -05:00
38d1587091 Malyan M200 V2 (#17840) 2020-05-04 14:37:43 -05:00
1c32f10039 Fix Malyan LCD crash bug (#17855) 2020-05-04 14:03:01 -05:00
714df3001a Fix Fysetc S6 PIO env (#17865) 2020-05-04 13:59:22 -05:00
2a959cde6f Fix undefined/unused, Touch UI (#17874) 2020-05-04 13:57:12 -05:00
5e23fd6ef1 [cron] Bump distribution date (2020-05-04) 2020-05-04 00:03:16 +00:00
9a6934874a Add XYZ_NO_FRAME option 2020-05-03 01:24:39 -05:00
36efe75ad1 Followup for Tool Migration (#17800) 2020-05-03 00:32:25 -05:00
0c68794fa9 Improve JD acosx implementation (#17817) 2020-05-02 23:59:09 -05:00
9a4a768ee3 Fix frequency limit editing (#17763) 2020-05-02 22:21:40 -05:00
120fcd1215 Support GT2560 3rd extruder (#17797) 2020-05-02 22:19:05 -05:00
3ea1c8a6fa Support for Ortur 4.3 mainboard (#17790) 2020-05-02 22:12:52 -05:00
6b3ed0f320 Cleanup in language.h 2020-05-02 21:32:36 -05:00
ef02358378 [cron] Bump distribution date (2020-05-03) 2020-05-03 00:06:47 +00:00
7613383e7b Add Rostock 301 thermistors (22, 23) (#17806) 2020-05-02 18:45:54 -05:00
cba4c5a756 Fix missing var for DGUS_LCD_UI_ORIGIN (#17819) 2020-05-02 18:32:01 -05:00
739b738e7f Permit more Creality pin overrides (#17820) 2020-05-02 18:30:23 -05:00
8d425c6720 Fix missing ProbeTempComp refs (#17833) 2020-05-02 18:27:18 -05:00
db32af9171 Fix ExtUI + Archim compile, typos (#17825) 2020-05-02 17:30:51 -05:00
208af8cb15 Fix STM32 + SoftwareSerial compile (#17831) 2020-05-02 17:24:51 -05:00
52f3f3b5ab Fix motor current array 2020-05-02 17:00:12 -05:00
9381a76d75 Add Cap:LONG_FILENAME (#17821) 2020-05-02 16:19:40 -05:00
e4d8336175 Fix XYZ types multiplication/division (#17826) 2020-05-02 16:17:02 -05:00
288447d01e Fix XYZ types multiplication/division (#17826) 2020-05-02 16:15:49 -05:00
93946c2868 Fix ExtUI compile (#17834) 2020-05-02 16:13:14 -05:00
9b7807d40f Clean up M122 code 2020-05-02 15:39:38 -05:00
dcd02284be [cron] Bump distribution date (2020-05-02) 2020-05-02 00:03:28 +00:00
2e21c72542 Add ExtUI mesh items for Malyan LCD
Fixes #17429
2020-05-01 00:52:46 -05:00
2107bc5836 Clean up EEPROM interfaces (#17803) 2020-05-01 00:04:55 -05:00
a226b281af UI and stall reset for extra TMC axes (#17818) 2020-04-30 22:52:33 -05:00
6edc2c3690 Fix eeprom init glitch 2020-04-30 22:50:05 -05:00
b4aebbe78d Allow STM32 pins to specify timers (#17805)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-30 22:42:40 -05:00
76bc7bf7b8 Pre-clean DUE flash eeprom code 2020-04-30 22:10:46 -05:00
306578d7be More explicit LPC timer defines 2020-04-30 19:31:49 -05:00
3efbe9a1c4 [cron] Bump distribution date (2020-05-01) 2020-05-01 00:03:30 +00:00
0b762189b4 Change RAMPS default filament runout pin (#17814) 2020-04-30 18:18:23 -05:00
9b820d71a6 Remove QSPI from "wired" EEPROM type 2020-04-30 18:16:10 -05:00
bd8436d1c5 Fix SAMD51 i2c EEPROM (#17815)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-30 18:14:49 -05:00
7f5730ea3b Minimal interface for F4/F7 flash 2020-04-30 18:00:42 -05:00
3c080ee3e6 Cleanup, comment "wired" eeproms 2020-04-30 18:00:42 -05:00
a521b0edbb Strip never-used eeprom functions 2020-04-30 17:25:27 -05:00
b335c38162 Drop extra Marduino includes 2020-04-30 17:25:27 -05:00
391f7fd742 [cron] Bump distribution date (2020-04-30) 2020-04-30 00:03:19 +00:00
e8b0796fc7 Revert menu_item_if ahead of refactor 2020-04-29 15:06:38 -05:00
c26725c5a0 L64XX can use hardStop for M17
See #17794
2020-04-29 15:06:19 -05:00
5e6faa999d Refine EEPROM types / flags (#17772) 2020-04-29 14:46:33 -05:00
2d758663db G12 E soft endstops parameter (#17788) 2020-04-29 03:25:35 -05:00
36adbfa41c Fix MKS S-Gen standard pins (#17786)
Fixes #17783
2020-04-29 03:16:13 -05:00
ef43520d56 Disambiguate i2c calls 2020-04-29 03:13:50 -05:00
2fbce22910 Cleanup followup 2020-04-29 01:47:41 -05:00
7b0891b3fa [cron] Bump distribution date (2020-04-29) 2020-04-29 00:20:13 +00:00
3d3d2a923b Cleanup with updated macros 2020-04-28 19:18:14 -05:00
f03f76ecfb Fix info menu without leveling
Fixes #17664
2020-04-28 19:18:14 -05:00
1d714512f0 Fix undefined Z stall 2020-04-28 19:18:14 -05:00
e7a6a52eda Use center defines for Z Safe Homing XY (#17782) 2020-04-28 18:12:56 -05:00
bd82b8bc7e Suppress compile warnings 2020-04-28 08:34:07 -05:00
4b35ff1f07 STEPPER_TIMER_RATE might call a function 2020-04-28 07:53:51 -05:00
56e3106b63 Clean up whitespace 2020-04-28 07:53:04 -05:00
2c959123e5 Clean up whitespace 2020-04-28 06:09:52 -05:00
5f7a75979f LPC176x SPI / I2C PersistentStore (#17651) 2020-04-28 02:27:55 -05:00
7c3909bc3f Save/Load distinct TMC SG thresholds (#17741) 2020-04-28 01:22:03 -05:00
07a6bf9b84 Enhance and fix FTDI EVE Touch UI (#17755)
- Stop print and play error sound if USB drive is removed.
- Allow configuration of version string in touch UI.
- Print a completion message in the bed mesh leveling screen.
- Don't play redundant sound at the start of a print.
- Clicking on percentage in status screen now goes into print speed screen
- Clicking on axis in status screen now goes to nozzle motion screens
- Use default increment of 100 when nozzle is preheated in temp screen, 10 otherwise
- Fixed grayed out change filament button in tune menu
- Eliminated code duplication in tune menu
- Add button for resetting BLTouch to advanced settings menu
2020-04-28 00:31:05 -05:00
0eeb5e2a29 General cleanup: pause, MarlinCore 2020-04-28 00:22:04 -05:00
89b17b5463 Followup fixes for singlenozzle, etc. (#17712) 2020-04-28 00:21:23 -05:00
4f003fc7a7 Streamline menu item logic (#17664) 2020-04-27 23:52:11 -05:00
f709c565a1 STM32F1: SD EEPROM fallback (#17715) 2020-04-27 23:45:20 -05:00
9fa5119333 Block during move in UBL mesh edit (#17670) 2020-04-27 23:35:10 -05:00
630b4ecfff Patch XY frequency menu 2020-04-27 23:31:17 -05:00
919e53a5d4 Fix: SD pause broken with PARK_HEAD_ON_PAUSE (#17754) 2020-04-27 22:43:42 -05:00
01c646a892 Apply more HAS_HOTEND 2020-04-27 22:39:31 -05:00
94291eb59f Clean up old externs / includes 2020-04-27 22:39:31 -05:00
f6e820b4e9 Fix buffer stuff 2020-04-27 22:39:30 -05:00
cd2652b2fc [cron] Bump distribution date (2020-04-28) 2020-04-28 00:17:17 +00:00
66676e6dd4 Remove extra macro 2020-04-27 10:19:37 -05:00
0b3a96412c Fixes for ExtUI / EVE (#17726) 2020-04-27 10:14:42 -05:00
035d6cd16d Patch i2c, info menu 2020-04-27 09:50:10 -05:00
9b90dfaa48 Fix draw_temps missing define compile (#17750) 2020-04-27 09:26:45 -05:00
267c25fd53 Remove spurious brace
Followup to c536b8de62
2020-04-27 09:06:56 -05:00
7eac76d31b Patch BLTouch Z_MAX_PIN for GT2560 Rev.A (non-plus) (#17721) 2020-04-27 08:38:23 -05:00
c56b66543d Permit Stall Sensitivity of 0 (#17722) 2020-04-27 08:27:14 -05:00
37176ed2b9 Apply maxtemp patch 2020-04-27 08:17:59 -05:00
0777e391be Add M115 Cap:BABYSTEPPING (#17691) 2020-04-27 07:31:48 -05:00
5d1498f2cb Fix SKR Pro / GTR i2c pins
Fixes #17297

Co-Authored-By: NAPCAL <napcal@users.noreply.github.com>
2020-04-27 06:57:38 -05:00
5507b6073c Fix dummy thermistors
Fixes #17422

Co-Authored-By: Moeschus <moeschus@users.noreply.github.com>
2020-04-27 06:35:02 -05:00
c536b8de62 Apply ternary macros 2020-04-27 06:30:28 -05:00
967c1d8534 Do SD sort order in CardReader 2020-04-27 06:30:28 -05:00
fc98383659 Update home bump assert 2020-04-27 06:29:09 -05:00
fec416f9db LCD preheat followup 2020-04-27 06:29:09 -05:00
5ae45bab18 Adjustable XY_FREQUENCY_LIMIT (#17583) 2020-04-27 05:59:52 -05:00
65daf3ba40 Fix G12 for SINGLENOZZLE (#17540)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-27 05:22:06 -05:00
c7f9eb7b21 Allow M42 M with other parameters (#17744) 2020-04-27 05:16:47 -05:00
8f7f7f7c45 Apply missed const& SPI optimization (#17734)
Followup to eebb68cd7f
2020-04-27 05:13:47 -05:00
c4d57462dc Apply HAS_MULTI_HOTEND 2020-04-27 05:10:47 -05:00
33217b0dd0 Add HOTEND_OVERSHOOT 2020-04-27 05:07:08 -05:00
8b3c7dda75 Add HAS_FAN and others 2020-04-27 05:07:08 -05:00
3d45a4bd23 Encapsulate Temperature items 2020-04-27 05:07:08 -05:00
011ecc341a Fix I2C_ADDRESS ambiguity 2020-04-27 05:07:08 -05:00
e1ad955897 Revert EEPROM tweak 2020-04-27 05:07:08 -05:00
8f86f7c601 Add Cap:SDCARD to M115 (#17208) 2020-04-26 20:55:14 -05:00
3bee705feb [cron] Bump distribution date (2020-04-27) 2020-04-27 00:03:28 +00:00
ef74ca60c0 Fix unwarm regData index 2020-04-26 03:11:28 -05:00
eebb68cd7f SPI performance tweak 2020-04-26 03:11:28 -05:00
4ed912eb23 Misc. patches 2020-04-25 22:10:19 -05:00
21067ab062 Add Prusa MMU2S settings - beta (#17523) 2020-04-25 21:07:21 -05:00
02a054cda4 HOME_BEFORE_FILAMENT_CHANGE on any axis unknown (#17681) 2020-04-25 20:56:54 -05:00
1752cd4fe5 Add a Mightyboard pin (#17538)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-25 20:03:16 -05:00
4895546238 [cron] Bump distribution date (2020-04-26) 2020-04-26 00:15:43 +00:00
f907de272a Fix mesh point sign
Most obvious part of #17670

Co-Authored-By: FilippoR <filippo.rossoni@gmail.com>
2020-04-25 16:50:05 -05:00
75c17c7a67 Include echo: with M503 output (#17665) 2020-04-25 13:29:30 -05:00
28518c2352 Save/Restore leveling on toolchange for singlenozzle too (#17682) 2020-04-25 12:20:42 -05:00
aa832a05c7 Use MCP4451 interface for MKS SBASE
Followup to #17536
2020-04-25 12:02:16 -05:00
11f7695907 Touch UI FTDI EVE is now beta (#17704) 2020-04-25 11:47:19 -05:00
b700b3cde6 Fix M261, i2c EEPROM, i2c Encoder for LPC (#17678)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-25 11:35:35 -05:00
307c48fe0a Parity between LPC176x pins 2020-04-25 11:25:05 -05:00
4d3a2bd22c Clean up filament change menu (#17702)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-25 10:56:56 -05:00
be7e04056f Update Italian language (#17707) 2020-04-25 10:44:46 -05:00
58ac9f257c NOZZLE_PARK_FEATURE - X/Y only axis move (#17697) 2020-04-25 10:42:34 -05:00
d2a5d51f69 Add NOZZLE_PARK_Z_RAISE_MIN (#17624) 2020-04-24 22:39:08 -05:00
3a27933ae7 Fixes for FYSETC Touch EVE 5" on AVR (#17659)
Co-Authored-By: RudolphRiedel <rudolphriedel@users.noreply.github.com>
Co-authored-by: sL1pKn07 <sl1pkn07@gmail.com>
2020-04-24 22:35:46 -05:00
d7f90c36df Fix SAMD51 Step Timer (#17692) 2020-04-24 22:27:58 -05:00
4af83430b5 ReARM SDSS pin for RRD LCDs (#17698) 2020-04-24 22:20:24 -05:00
75b91550f3 Update Italian language (#17695) 2020-04-24 22:16:47 -05:00
e25402b541 Apply TERN 2020-04-24 21:00:42 -05:00
94dd9ce73d [cron] Bump distribution date (2020-04-25) 2020-04-25 00:03:26 +00:00
cf8c14b1b0 ExtUI allow small JD mm 2020-04-24 17:41:35 -05:00
2efbca5535 Composite test followup
See ab2b98e425
2020-04-23 22:46:53 -05:00
e11a806460 Revert config replace 2020-04-23 22:36:05 -05:00
ab2b98e425 Apply composite tests 2020-04-23 21:53:52 -05:00
55d66fb897 Add HAS_JUNCTION_DEVIATION 2020-04-23 21:53:51 -05:00
df22b96d72 Update mfpr 2020-04-23 21:53:51 -05:00
07252ad0b3 Update firstpush 2020-04-23 20:49:58 -05:00
b151feb31e [cron] Bump distribution date (2020-04-24) 2020-04-24 00:03:19 +00:00
44b71103df Patch tool_change typo 2020-04-23 16:19:57 -05:00
69f211cf78 Add empty ui.completion_feedback 2020-04-23 15:17:25 -05:00
239c45dc11 German language followup 2020-04-23 15:17:25 -05:00
d5b791a26a Fix Malyan ExtUI parse_lcd_byte
See https://community.platformio.org/t/marlin-compile-fail-board-board-h-no-such-file-or-directory/11843/43
2020-04-22 22:07:38 -05:00
76efba686b More explicit firstpush 2020-04-22 21:05:31 -05:00
2f6262c27b Automatic Tool Migration feature (#17248) 2020-04-22 21:03:28 -05:00
4dce03fa42 [cron] Bump distribution date (2020-04-23) 2020-04-23 00:03:05 +00:00
e222ba4c81 Prevent DUE / Spindle conflict
Fixes #17449
2020-04-22 18:54:13 -05:00
19873f04d4 Fix M100 compile warning 2020-04-22 18:53:40 -05:00
f263787f07 Fix ExtUI 0<brightness<12 (#17644)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-22 16:47:29 -05:00
c3aeed0dcc Prevent SKR Pro bootloader corruption (#17657)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-22 16:43:43 -05:00
468b813bc1 Better ooze prevention during pause (#17625) 2020-04-22 16:43:06 -05:00
6d90d1e1f5 Apply TERN to compact code (#17619) 2020-04-22 16:35:03 -05:00
88bdd26c99 Clean up SKR Pro v1.1 pins (#17653) 2020-04-22 15:04:21 -05:00
fd453d23b9 Update German language (#17591) 2020-04-22 15:01:19 -05:00
33bb7859d4 Composite USB for STM32 SDIO (experimental) (#17222) 2020-04-22 15:00:10 -05:00
8a9c14ea1d Remove obsolete comment 2020-04-22 14:55:33 -05:00
00d35ccc14 Add EXPERIMENTAL_SCURVE to AGC test 2020-04-22 14:55:33 -05:00
5a5be7e287 Reorder setup, with serial early 2020-04-21 21:38:21 -05:00
0fec478562 Wrangle HAL EEPROM types 2020-04-21 21:33:13 -05:00
d666ef00e0 Prevent 'I2C_EEPROM' on LPC176x 2020-04-21 21:33:13 -05:00
1563d128d8 [cron] Bump distribution date (2020-04-22) 2020-04-22 00:03:05 +00:00
d34c22ac22 Skip redundant file/dir tests 2020-04-21 18:39:43 -05:00
c3946dd017 Add a warning on LA + S-Curve 2020-04-21 18:39:43 -05:00
5de87361e9 Call first_load from manage_media 2020-04-21 18:39:43 -05:00
d96c769fd6 Move Power Loss Recovery check 2020-04-21 15:27:53 -05:00
2ae00db43e Move G26 heading up 2020-04-21 15:27:53 -05:00
a5b2e3e63c Fix Mixer::reset_vtools bug
Fixes #17635
2020-04-21 13:07:56 -05:00
eb91dbce42 [cron] Bump distribution date (2020-04-21) 2020-04-21 00:03:16 +00:00
abd42e5dea Fix M125 unretract length (#17623) 2020-04-20 11:32:21 -05:00
000ec9fc13 Ensure language.h include order
See #17604
2020-04-20 09:43:48 -05:00
875cd4e081 Remove 'Media Released' message (#17272)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-20 09:17:55 -05:00
ccfd5c1010 Trinamic steppers Homing Phase (#17299) 2020-04-20 08:08:00 -05:00
cba58b1027 Fix "possible buffer overrun" warning (#17513) 2020-04-20 07:16:38 -05:00
90a432279b Update Slovak language (#17588) 2020-04-20 07:13:33 -05:00
9338fb87e9 Update Hungarian language (#17593) 2020-04-20 07:13:04 -05:00
b55dd2cb82 Fix low contrast on Minipanel display (#17601) 2020-04-20 07:07:23 -05:00
f779d1be3f HD44780 mapping for Czech accents (#17603) 2020-04-20 07:05:58 -05:00
27f0f10590 Ensure brightness > 0 in ExtUI (#17611) 2020-04-20 07:03:00 -05:00
1af6a6d4f9 Update Language fonts (#17620) 2020-04-20 06:55:55 -05:00
a0d0ce464e Sanity-check nozzle park point (#17621) 2020-04-20 06:54:24 -05:00
15f6f53638 Add HAS_HOTEND, etc. 2020-04-20 00:12:22 -05:00
5d0deba938 Longer default power-up delay
See MarlinFirmware/Configurations#78
2020-04-20 00:12:22 -05:00
78fe411c7d Include swt_init in log 2020-04-20 00:12:21 -05:00
776d7761d9 [cron] Bump distribution date (2020-04-20) 2020-04-20 00:03:17 +00:00
1bbd77646e Clean up language files 2020-04-19 02:37:44 -05:00
87875e0de8 Fix mixing with "unload all" compile 2020-04-19 02:10:02 -05:00
ad7a6e10a7 Fix no-bed compile error 2020-04-19 00:57:29 -05:00
b420fdaa87 Digipots followup 2020-04-18 23:36:34 -05:00
4a5a3d27ed Option to use raw digipot values (#17536) 2020-04-18 22:56:23 -05:00
8e8ba46cb6 [cron] Bump distribution date (2020-04-19) 2020-04-19 00:03:26 +00:00
8ad056013c Define "resolution" in bits 2020-04-17 22:33:15 -05:00
a12b021733 [cron] Bump distribution date (2020-04-18) 2020-04-18 00:03:23 +00:00
50fa87f1cf Proportional Autotemp followup (#17585)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-17 11:19:31 -05:00
d78ce58b6f Update a (c) date (#17584)
Little update
2020-04-17 10:46:04 -05:00
3a42b6c5c6 Patch M425 for CAN_CALIBRATE
Fixes #17430
2020-04-17 10:24:27 -05:00
f94ab84dac Malyan M300 support (#17421) 2020-04-17 09:10:41 -05:00
360e07c90f Add USE_PROBE_FOR_Z_HOMING option (#17359) 2020-04-17 09:02:21 -05:00
a794538c54 Homing backoff enhancements
- Define homing bump as an array
- Add pre and post homing backoff options
- Consolidate homing config options
2020-04-17 08:52:41 -05:00
cbf349b5eb Fix some DGUS bugs
- No action on first click of the move button
2020-04-17 08:52:41 -05:00
e7f3b625b0 Use 'melzi' envs for MELZI_CREALITY (#17578) 2020-04-17 07:19:47 -05:00
880f73d471 Minor cleanup 2020-04-17 04:35:00 -05:00
3fcb36d8dc M200/M300 LCD comment 2020-04-17 03:44:50 -05:00
bbe2cb75ad More accurate Junction Deviation fast-acos (#17575) 2020-04-16 21:51:05 -05:00
927e29b93e [cron] Bump distribution date (2020-04-17) 2020-04-17 00:05:52 +00:00
3210155ab7 Update French language (#17577) 2020-04-16 19:04:43 -05:00
9110f756ad AUTOTEMP default proportions (#17560) 2020-04-16 19:03:53 -05:00
fd4c025e98 More features in SAMD51 test (#17572) 2020-04-16 18:01:17 -05:00
720795ac7d More verbose probing error (#17482) 2020-04-16 16:22:37 -05:00
847ea583f6 STM32F103VE has 512K Flash EEPROM (#17565) 2020-04-16 15:34:44 -05:00
d353d67a34 SD detect override for older Creality3D RAMPS (#17469) 2020-04-16 04:41:05 -05:00
f5577b320b Update Italian language (#17467) 2020-04-16 04:39:01 -05:00
c16818b261 Fix SAMD51 timer usage (#17471) 2020-04-16 04:38:17 -05:00
78a5079558 Add Hungarian language (#17491)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-16 04:11:42 -05:00
aca2e149ab Silence E3 DIP build warning (#17492) 2020-04-16 03:58:29 -05:00
f5d809f366 SKR Pro 1.1 WiFi and LCD SD card support (#17531) 2020-04-16 03:55:33 -05:00
d194688020 Define EEPROM, SD type for MKS Robin nano (#17498) 2020-04-16 03:53:58 -05:00
7d0ea3e2c4 Fix framework-arduinoststm32 minimum version (#17512) 2020-04-16 03:43:32 -05:00
0f0b1aff55 Update GLCD Silvergate display timing (#17518) 2020-04-16 03:41:27 -05:00
0ce532547a Update Polish language (#17525) 2020-04-16 03:40:17 -05:00
d8b8d88276 Move setup logging to the top 2020-04-16 03:37:00 -05:00
1c43870cec Add chamber to sensitive pins 2020-04-16 03:31:44 -05:00
03020dd31e Use the common pattern for auto fan pins
Now that pins.h is guaranteed included after configs.
2020-04-16 03:31:44 -05:00
3a9f8a00bf Fix SD connection for some boards 2020-04-16 03:31:44 -05:00
880f63b008 It looks like HAS_ONBOARD_SD is obsolete 2020-04-16 03:31:44 -05:00
bc856fd8ec MKS Robin E3 / E3D support (#17569)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-16 01:19:24 -05:00
2824e67d95 Add ExtUI::onStatusChanged_P (#17543) 2020-04-16 00:33:31 -05:00
089a0af119 More info on E3D, Keenovo, and Wanhao thermistors (#17561) 2020-04-16 00:04:53 -05:00
e990a98404 FYSETC TFT81050 LCD support (#17568) 2020-04-15 23:34:48 -05:00
791873b10d Fix ExtUI compile errors (#17544)
Fixes #16628
2020-04-15 23:17:01 -05:00
808f632997 Update print job timer with Chamber temp (#17552) 2020-04-15 23:12:09 -05:00
4edaffebfb [cron] Bump distribution date (2020-04-16) 2020-04-16 00:03:23 +00:00
cdbc7cc52c Define En DIAG pins for auto-assigns 2020-04-14 19:09:06 -05:00
cae2b7bf4e SKR Pro V1.1 StallGuard pins (#17550)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-14 19:05:08 -05:00
3cdc9b8156 [cron] Bump distribution date (2020-04-15) 2020-04-15 00:03:14 +00:00
c834b313a5 Fix Mightyboard build (#17537) 2020-04-13 21:49:55 -05:00
9038278735 Galician language corrections (#17454) 2020-04-13 21:17:01 -05:00
f59c0ab842 [cron] Bump distribution date (2020-04-14) 2020-04-14 00:08:34 +00:00
6ce0c94d12 Fix bad comparison (#17470)
* Suggested message change

* Fix Bad Comparison

Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-13 17:23:54 -05:00
e9c8da35c5 Subcall overflow error message 2020-04-13 14:54:51 -05:00
421825259e Shorter M32 error message 2020-04-13 14:54:50 -05:00
e6ccec17a6 Expose SD_PROCEDURE_DEPTH in config 2020-04-13 14:54:50 -05:00
22da1b2b31 Rename some "kill" messages 2020-04-13 14:54:50 -05:00
a7a76f123d [cron] Bump distribution date (2020-04-13) 2020-04-13 00:03:48 +00:00
e3321920f3 Update Marlin website links to https 2020-04-12 17:21:14 -05:00
f090a927f4 Reapply BLTouch deploy/stow patch
- Fixes #14328
- Originally #14352
- Reverted in 2580104
2020-04-12 15:16:43 -05:00
ac7b484703 Safe homing: Raise Z on G28 Z (#17501)
Co-Authored-By: RFBomb <robbery525@gmail.com>
2020-04-12 14:58:58 -05:00
a2e9a02429 Fix PLR when card isn't mounted yet
Fixes a regression from 9bff67bc74
2020-04-12 14:44:45 -05:00
7894937737 Update Spanish language (#17505) 2020-04-12 14:12:08 -05:00
4cdd51cd3a Apply TERN to status screen 2020-04-12 13:28:07 -05:00
37752bd8bb Update Spanish language (#17465) 2020-04-12 01:35:30 -05:00
333092c488 Fix MKS Robin infinite boot (#17497) 2020-04-12 01:23:08 -05:00
2493cf0364 Fix M1001 with HAS_LEDS_OFF_FLAG 2020-04-12 01:22:10 -05:00
7aed32df00 Fix SD_FINISHED_RELEASECOMMAND bug
Fixes #17401 bug that was introduced in 8f26c3a
2020-04-11 22:08:37 -05:00
a97ae51cc7 Archim: PIO upload on Windows, Arduino IDE LCD (#17405)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
2020-04-11 20:39:02 -05:00
e4903396d4 Fix up pausing / parking display (#17460) 2020-04-11 20:36:17 -05:00
dfb5968bfe [cron] Bump distribution date (2020-04-12) 2020-04-12 00:03:21 +00:00
07c9dc4142 Make pid_debug_flag match declaration in M303.cpp
Get it right this time!
2020-04-11 11:03:04 -05:00
a65198882f Make declaration of PID_debug_flag match M303.cpp 2020-04-11 10:25:19 -05:00
8647d6b8d8 [cron] Bump distribution date (2020-04-11) 2020-04-11 00:03:20 +00:00
48919c54fb Add SRAM command injection (#17459) 2020-04-09 20:05:58 -05:00
7af0da7f93 [cron] Bump distribution date (2020-04-10) 2020-04-10 00:03:54 +00:00
c2bd9dd4f5 Show "Pausing…" during pause 2020-04-09 18:09:54 -05:00
dbdfe61644 Fix and improve FTDI Eve Touch UI (#17426) 2020-04-09 16:00:25 -05:00
397fa59eee Sort out USBComposite for STM32F1 confusion (#17400) 2020-04-09 15:58:45 -05:00
5158106c12 Update Spanish translation (#17406) 2020-04-09 13:35:32 -05:00
3645e59893 Minor style tweaks 2020-04-09 12:31:33 -05:00
71a4ab3331 Add "Settings Stored" message 2020-04-09 12:31:33 -05:00
556406a127 [cron] Bump distribution date (2020-04-09) 2020-04-09 00:02:53 +00:00
a1523d6419 Fix: const needed for operator* (#17443) 2020-04-08 15:00:31 -05:00
3ea23712eb Fix stepper DAC compile
Fixes #17438
2020-04-08 14:17:29 -05:00
d6badb77a4 Clean up whitespace 2020-04-08 14:04:51 -05:00
293a0997c9 Fix / optimize PCA9533 LED (Mightyboard) (#17381) 2020-04-08 12:53:28 -05:00
079644d012 [cron] Bump distribution date (2020-04-08) 2020-04-08 00:02:57 +00:00
e1fc6f7e25 [cron] Bump distribution date (2020-04-07) 2020-04-07 00:03:10 +00:00
966e0e4a77 BTT002 release V1 uses STM32F407VGT6 (#17387) 2020-04-06 15:51:09 -05:00
d6f39a69af Fix G76 probe height / position (#17392) 2020-04-06 15:32:06 -05:00
1d81bb7a2b [cron] Bump distribution date (2020-04-06) 2020-04-06 00:02:56 +00:00
c47feb1cfe Update Galician language (#17418) 2020-04-05 18:36:27 -05:00
fad9235cd8 Move MSG_x_LINE to multi_language.h 2020-04-05 18:25:59 -05:00
07b3f38269 First SD status change is silent 2020-04-04 23:51:20 -05:00
86a3efda6f Update Italian language (#17407) 2020-04-04 20:51:05 -05:00
8dd9afe4f9 Better push in 'mfpub' 2020-04-04 20:33:48 -05:00
da0f63cd1c [cron] Bump distribution date (2020-04-05) 2020-04-05 00:02:50 +00:00
0e06aaa2bc Add millis helper macros 2020-04-04 02:48:30 -05:00
723d4d6f61 Fix Archim 2 build for PIO 2020-04-04 02:18:33 -05:00
65f6a373b0 Refactor SD detect handler (#17380)
Co-Authored-By: Eric Ptak <trouch@users.noreply.github.com>
2020-04-04 00:08:25 -05:00
bc01d8d023 Toolchange touchup (#17395)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
2020-04-03 19:17:05 -05:00
ed0799d653 [cron] Bump distribution date (2020-04-04) 2020-04-04 00:03:24 +00:00
Ben
df8b7dfc40 Various Laser / Spindle improvements (#15335) 2020-04-02 19:31:08 -05:00
e7e9304819 [cron] Bump distribution date (2020-04-03) 2020-04-03 00:03:31 +00:00
2b9d2dce16 Apply GRID_LOOP 2020-04-02 14:33:04 -05:00
be0e313c07 Touch UI additions, bug fixes (#17379) 2020-04-02 14:24:55 -05:00
11ce281694 Followup to #17351 2020-04-02 13:32:59 -05:00
9f86dde195 Clean up UI declarations, apply TERN_ 2020-04-02 01:31:03 -05:00
f263782f1b Fix ESP32 eeprom flag 2020-04-01 23:51:33 -05:00
62e8c2dd87 Fix up 'system' includes 2020-04-01 23:51:09 -05:00
514afddeb4 Minor code cleanup 2020-04-01 19:48:58 -05:00
7f5dc7b919 More 8 extruders (TMC) support 2020-04-01 19:46:21 -05:00
c47bdae9f2 [cron] Bump distribution date (2020-04-02) 2020-04-02 00:03:23 +00:00
192c7c27b9 Fix extra TMC serial begin calls (#17351) 2020-04-01 16:20:38 -05:00
0518dec60d Correct link to Configurations (#17370) 2020-04-01 14:16:01 -05:00
178ca2bcdf Fix M710 report formatting (#17356) 2020-03-31 19:13:37 -05:00
5236889377 [cron] Bump distribution date (2020-04-01) 2020-04-01 00:03:36 +00:00
1905 changed files with 136001 additions and 30669 deletions

2
.github/FUNDING.yml vendored
View File

@ -1,3 +1,3 @@
github: [thinkyhead]
patreon: thinkyhead
custom: ["http://www.thinkyhead.com/donate-to-marlin"]
custom: ["https://www.thinkyhead.com/donate-to-marlin"]

View File

@ -2,7 +2,7 @@
name: Feature request
about: Request a Feature
title: "[FR] (feature request title)"
labels: ''
labels: 'T: Feature Request'
assignees: ''
---

View File

@ -34,16 +34,15 @@ This project and everyone participating in it is governed by the [Marlin Code of
We have a Message Board and a Facebook group where our knowledgable user community can provide helpful advice if you have questions.
* [Marlin RepRap forum](http://forums.reprap.org/list.php?415)
* [Marlin RepRap forum](https://reprap.org/forum/list.php?415)
* [MarlinFirmware on Facebook](https://www.facebook.com/groups/1049718498464482/)
If chat is more your speed, you can join the MarlinFirmware Slack team:
If chat is more your speed, you can join the MarlinFirmware Discord server:
* Join the Marlin Slack Team
* To obtain group access, please [send a request](http://www.thinkyhead.com/contact/9) to @thinkyhead.
* Even though Slack is a chat service, sometimes it takes several hours for community members to respond &mdash; please be patient!
* Use the `#general` channel for general questions or discussion about Marlin.
* Other channels exist for certain topics. Check the channel list.
* Use the link https://discord.gg/n5NJ59y to join up as a General User.
* Even though our Discord is pretty active, it may take a while for community members to respond &mdash; please be patient!
* Use the `#general` channel for general questions or discussion about Marlin.
* Other channels exist for certain topics or are limited to Patrons. Check the channel list.
## How Can I Contribute?
@ -93,7 +92,7 @@ Before creating a suggestion, please check [this list](#before-submitting-a-sugg
#### Before Submitting a Feature Request
* **Check the [Marlin website](http://marlinfw.org/)** for tips — you might discover that the feature is already included. Most importantly, check if you're using [the latest version of Marlin](https://github.com/MarlinFirmware/Marlin/releases) and if you can get the desired behavior by changing [Marlin's config settings](http://marlinfw.org/docs/configuration/configuration.html).
* **Check the [Marlin website](https://marlinfw.org/)** for tips — you might discover that the feature is already included. Most importantly, check if you're using [the latest version of Marlin](https://github.com/MarlinFirmware/Marlin/releases) and if you can get the desired behavior by changing [Marlin's config settings](https://marlinfw.org/docs/configuration/configuration.html).
* **Perform a [cursory search](https://github.com/MarlinFirmware/Marlin/issues?q=is%3Aissue)** to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
#### How Do I Submit A (Good) Feature Request?
@ -117,12 +116,12 @@ Unsure where to begin contributing to Marlin? You can start by looking through t
### Pull Requests
Pull Requests should always be targeted to working branches (e.g., `bugfix-1.1.x` and/or `bugfix-2.0.x`) and never to release branches (e.g., `1.1.x`). If this is your first Pull Request, please read our [Guide to Pull Requests](http://marlinfw.org/docs/development/getting_started_pull_requests.html) and Github's [Pull Request](https://help.github.com/articles/creating-a-pull-request/) documentation.
Pull Requests should always be targeted to working branches (e.g., `bugfix-1.1.x` and/or `bugfix-2.0.x`) and never to release branches (e.g., `1.1.x`). If this is your first Pull Request, please read our [Guide to Pull Requests](https://marlinfw.org/docs/development/getting_started_pull_requests.html) and Github's [Pull Request](https://help.github.com/articles/creating-a-pull-request/) documentation.
* Fill in [the required template](pull_request_template.md).
* Don't include issue numbers in the PR title.
* Include pictures, diagrams, and links to videos in your Pull Request to demonstrate your changes, if needed.
* Follow the [Coding Standards](http://marlinfw.org/docs/development/coding_standards.html) posted on our website.
* Follow the [Coding Standards](https://marlinfw.org/docs/development/coding_standards.html) posted on our website.
* Document new code with clear and concise comments.
* End all files with a newline.
@ -137,7 +136,7 @@ Pull Requests should always be targeted to working branches (e.g., `bugfix-1.1.x
### C++ Coding Standards
* Please read and follow the [Coding Standards](http://marlinfw.org/docs/development/coding_standards.html) posted on our website. Failure to follow these guidelines will delay evaluation and acceptance of Pull Requests.
* Please read and follow the [Coding Standards](https://marlinfw.org/docs/development/coding_standards.html) posted on our website. Failure to follow these guidelines will delay evaluation and acceptance of Pull Requests.
### Documentation

View File

@ -1,16 +1,11 @@
# NO SUPPORT REQUESTS PLEASE
Support Requests posted here will be automatically closed!
Do you want to ask a question? Are you looking for support? Please don't post here. Support Requests posted here will be automatically closed!
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.
Instead use one of the following options:
For best results getting help with configuration and troubleshooting, please use the following resources:
- The Marlin Firmware forum at https://reprap.org/forum/list.php?415
- The MarlinFirmware Facebook Group at https://www.facebook.com/groups/1049718498464482/
- The MarlinFirmware Discord Server at https://discord.gg/n5NJ59y.
- RepRap.org Marlin Forum http://forums.reprap.org/list.php?415
- Tom's 3D Forums https://discuss.toms3d.org/
- Facebook Group "Marlin Firmware" https://www.facebook.com/groups/1049718498464482/
- Facebook Group "Marlin Firmware for 3D Printers" https://www.facebook.com/groups/3Dtechtalk/
- Marlin Configuration https://www.youtube.com/results?search_query=marlin+configuration on YouTube
- Marlin Discord server. Join link: https://discord.gg/n5NJ59y
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).
Before filing an issue be sure to test the latest "bugfix" branch to see whether the issue is already addressed.

40
.github/lock.yml vendored Normal file
View File

@ -0,0 +1,40 @@
#
# Configuration for Lock Threads - https://github.com/dessant/lock-threads-app
#
# Number of days of inactivity before a closed issue or pull request is locked
daysUntilLock: 60
# Skip issues and pull requests created before a given timestamp. Timestamp must
# follow ISO 8601 (`YYYY-MM-DD`). Set to `false` to disable
skipCreatedBefore: false
# Issues and pull requests with these labels will be ignored. Set to `[]` to disable
exemptLabels: [ 'no-locking' ]
# Label to add before locking, such as `outdated`. Set to `false` to disable
lockLabel: false
# Comment to post before locking. Set to `false` to disable
lockComment: >
This thread has been automatically locked since there has not been
any recent activity after it was closed. Please open a new issue for
related bugs.
# Assign `resolved` as the reason for locking. Set to `false` to disable
setLockReason: true
# Limit to only `issues` or `pulls`
# only: issues
# Optionally, specify configuration settings just for `issues` or `pulls`
# issues:
# exemptLabels:
# - help-wanted
# lockLabel: outdated
# pulls:
# daysUntilLock: 30
# Repository to extend settings from
# _extends: repo

View File

@ -14,6 +14,10 @@ We must be able to understand your proposed change from this description. If we
<!-- What does this fix or improve? -->
### Configurations
<!-- Attach any Configuration.h, Configuration_adv.h, or platformio.ini files needed to compile/test your Pull Request. -->
### Related Issues
<!-- Whether this fixes a bug or fulfills a feature request, please list any related Issues here. -->

View File

@ -1,7 +0,0 @@
Thanks for your contribution! Unfortunately we can't accept PRs directed at release branches. We make patches to the bugfix branches and only later do we push them out as releases.
Please redo this PR starting with the `bugfix-2.0.x` branch and be careful to target `bugfix-2.0.x` when resubmitting the PR.
It may help to set your fork's default branch to `bugfix-2.0.x`.
See [this page](http://marlinfw.org/docs/development/getting_started_pull_requests.html) for full instructions.

View File

@ -11,6 +11,8 @@ on:
jobs:
bump_date:
name: Bump Distribution Date
if: github.repository == 'MarlinFirmware/Marlin'
runs-on: ubuntu-latest
@ -24,7 +26,6 @@ jobs:
- name: Bump Distribution Date
run: |
# Inline Bump Script
[[ "$GITHUB_REPOSITORY" == "MarlinFirmware/Marlin" ]] || exit 0
DIST=$( date +"%Y-%m-%d" )
eval "sed -E -i 's/(#define +STRING_DISTRIBUTION_DATE) .*$/\1 \"$DIST\"/g' Marlin/src/inc/Version.h" && \
git config user.name "${GITHUB_ACTOR}" && \

View File

@ -1,6 +1,6 @@
#
# comment-pr.yml
# Add a comment to any PR directed to a release branch
# check-pr.yml
# Close PRs directed at release branches
#
name: PR Bad Target
@ -14,14 +14,20 @@ on:
jobs:
bad_target:
name: PR Bad Target
if: github.repository == 'MarlinFirmware/Marlin'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: harupy/comment-on-pr@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
filename: bad-target.md
- uses: peter-evans/close-pull@v1
with:
delete-branch: false
comment: >
Thanks for your contribution! Unfortunately we can't accept PRs directed at release branches. We make patches to the bugfix branches and only later do we push them out as releases.
Please redo this PR starting with the `bugfix-2.0.x` branch and be careful to target `bugfix-2.0.x` when resubmitting the PR.
It may help to set your fork's default branch to `bugfix-2.0.x`.
See [this page](http://marlinfw.org/docs/development/getting_started_pull_requests.html) for full instructions.

27
.github/workflows/close-stale.yml vendored Normal file
View File

@ -0,0 +1,27 @@
#
# close-stale.yml
# Close open issues after a period of inactivity
#
name: Close Stale Issues
on:
schedule:
- cron: "22 1 * * *"
jobs:
stale:
name: Close Stale Issues
if: github.repository == 'MarlinFirmware/Marlin'
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v3
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'This issue has had no activity in the last 30 days. Please add a reply if you want to keep this issue active, otherwise it will be automatically closed within 7 days.'
days-before-stale: 30
days-before-close: 7
stale-issue-label: 'stale-closing-soon'
exempt-issue-labels: 'T: Feature Request'

32
.github/workflows/lock-closed.yml vendored Normal file
View File

@ -0,0 +1,32 @@
#
# lock-closed.yml
# Lock closed issues after a period of inactivity
#
name: Lock Closed Issues
on:
schedule:
- cron: '0 1/13 * * *'
jobs:
lock:
name: Lock Closed Issues
if: github.repository == 'MarlinFirmware/Marlin'
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v2
with:
github-token: ${{ github.token }}
process-only: 'issues'
issue-lock-inactive-days: '60'
issue-exclude-created-before: ''
issue-exclude-labels: 'no-locking'
issue-lock-labels: ''
issue-lock-comment: >
This issue has been automatically locked since there
has not been any recent activity after it was closed.
Please open a new issue for related bugs.
issue-lock-reason: ''

View File

@ -9,7 +9,14 @@ on:
pull_request:
branches:
- bugfix-2.0.x
- dev-2.1.x
paths-ignore:
- config/**
- data/**
- docs/**
- '**/*.md'
push:
branches:
- bugfix-2.0.x
paths-ignore:
- config/**
- data/**
@ -18,6 +25,8 @@ on:
jobs:
test_builds:
name: Run All Tests
if: github.repository == 'MarlinFirmware/Marlin'
runs-on: ubuntu-latest
@ -32,6 +41,7 @@ jobs:
- mega2560
- teensy31
- teensy35
- teensy41
- SAMD51_grandcentral_m4
# Extended AVR Environments
@ -49,14 +59,28 @@ jobs:
- STM32F103RE_btt
- STM32F103RE_btt_USB
- STM32F103RC_fysetc
- STM32F103RC_meeb
- jgaurora_a5s_a1
- STM32F103VE_longer
- STM32F407VE_black
- STM32F401VE_STEVAL
- BIGTREE_BTT002
- BIGTREE_SKR_PRO
- BIGTREE_GTR_V1_0
- mks_robin
- mks_robin_stm32
- ARMED
- FYSETC_S6
- STM32F070CB_malyan
- STM32F070RB_malyan
- malyan_M300
- mks_robin_lite
- FLYF407ZG
- rumba32
- mks_robin_pro
- STM32F103RET6_creality
- LERDGEX
- mks_robin_nano35
# Put lengthy tests last
@ -69,14 +93,10 @@ jobs:
#- STM32F7
# Non-working environment tests
#- BIGTREE_BTT002
#- at90usb1286_cdc
#- at90usb1286_dfu
#- STM32F103CB_malyan
#- mks_robin_lite
#- mks_robin_mini
#- mks_robin_nano
steps:
@ -88,7 +108,7 @@ jobs:
- name: Install PlatformIO
run: |
pip install -U https://github.com/platformio/platformio-core/archive/master.zip
pip install -U https://github.com/platformio/platformio-core/archive/develop.zip
platformio update
- name: Check out the PR
@ -97,8 +117,7 @@ jobs:
- name: Run ${{ matrix.test-platform }} Tests
run: |
# Inline tests script
[[ "$GITHUB_REPOSITORY" == "MarlinFirmware/Marlin" ]] || exit 0
chmod +x buildroot/bin/*
chmod +x buildroot/share/tests/*
export PATH=./buildroot/bin/:./buildroot/share/tests/:${PATH}
chmod +x buildroot/tests/*
export PATH=./buildroot/bin/:./buildroot/tests/:${PATH}
run_tests . ${{ matrix.test-platform }}

22
.github/workflows/unlock-reopened.yml vendored Normal file
View File

@ -0,0 +1,22 @@
#
# unlock-reopened.yml
# Unlock an issue whenever it is re-opened
#
name: "Unlock reopened issue"
on:
issues:
types: [reopened]
jobs:
unlock:
name: Unlock Reopened
if: github.repository == 'MarlinFirmware/Marlin'
runs-on: ubuntu-latest
steps:
- uses: OSDKDev/unlock-issues@v1.1
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"

2
.gitignore vendored
View File

@ -16,7 +16,7 @@
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
# Our automatic versioning scheme generates the following file

View File

@ -3,7 +3,7 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (c) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Copyright (c) 2007 Free Software Foundation, Inc. <https://www.fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@ -647,7 +647,7 @@ the "copyright" line and a pointer to where the full notice is found.
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
@ -666,12 +666,11 @@ might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.
<https://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
<https://www.gnu.org/licenses/why-not-lgpl.html>.

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -34,9 +34,8 @@
* - Extra features
*
* Advanced settings can be found in Configuration_adv.h
*
*/
#define CONFIGURATION_H_VERSION 020005
#define CONFIGURATION_H_VERSION 020007
//===========================================================================
//============================= Getting Started =============================
@ -45,13 +44,13 @@
/**
* Here are some standard links for getting your machine calibrated:
*
* http://reprap.org/wiki/Calibration
* http://youtu.be/wAL9d7FgInk
* https://reprap.org/wiki/Calibration
* https://youtu.be/wAL9d7FgInk
* http://calculator.josefprusa.cz
* http://reprap.org/wiki/Triffid_Hunter%27s_Calibration_Guide
* http://www.thingiverse.com/thing:5573
* https://reprap.org/wiki/Triffid_Hunter%27s_Calibration_Guide
* https://www.thingiverse.com/thing:5573
* https://sites.google.com/site/repraplogphase/calibration-of-your-reprap
* http://www.thingiverse.com/thing:298812
* https://www.thingiverse.com/thing:298812
*/
//===========================================================================
@ -140,13 +139,13 @@
#define CUSTOM_MACHINE_NAME "SKR i3"
// Printer's unique ID, used by some programs to differentiate between machines.
// Choose your own or use a service like http://www.uuidgenerator.net/version4
// Choose your own or use a service like https://www.uuidgenerator.net/version4
//#define MACHINE_UUID "00000000-0000-0000-0000-000000000000"
// @section extruder
// This defines the number of extruders
// :[1, 2, 3, 4, 5, 6, 7, 8]
// :[0, 1, 2, 3, 4, 5, 6, 7, 8]
#define EXTRUDERS 1
// Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc.
@ -155,6 +154,13 @@
// For Cyclops or any "multi-extruder" that shares a single nozzle.
//#define SINGLENOZZLE
// Save and restore temperature and fan speed on tool-change.
// Set standby for the unselected tool with M104/106/109 T...
#if ENABLED(SINGLENOZZLE)
//#define SINGLENOZZLE_STANDBY_TEMP
//#define SINGLENOZZLE_STANDBY_FAN
#endif
/**
* Průša MK2 Single Nozzle Multi-Material Multiplexer, and variants.
*
@ -175,7 +181,7 @@
#endif
/**
* Prusa Multi-Material Unit v2
* Průša Multi-Material Unit v2
*
* Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
* Requires EXTRUDERS = 5
@ -233,8 +239,8 @@
#elif ENABLED(MAGNETIC_PARKING_EXTRUDER)
#define MPE_FAST_SPEED 9000 // (mm/m) Speed for travel before last distance point
#define MPE_SLOW_SPEED 4500 // (mm/m) Speed for last distance travel to park and couple
#define MPE_FAST_SPEED 9000 // (mm/min) Speed for travel before last distance point
#define MPE_SLOW_SPEED 4500 // (mm/min) Speed for last distance travel to park and couple
#define MPE_TRAVEL_DISTANCE 10 // (mm) Last distance point
#define MPE_COMPENSATION 0 // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling
@ -282,8 +288,8 @@
#if ENABLED(PRIME_BEFORE_REMOVE)
#define SWITCHING_TOOLHEAD_PRIME_MM 20 // (mm) Extruder prime length
#define SWITCHING_TOOLHEAD_RETRACT_MM 10 // (mm) Retract after priming length
#define SWITCHING_TOOLHEAD_PRIME_FEEDRATE 300 // (mm/m) Extruder prime feedrate
#define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400 // (mm/m) Extruder retract feedrate
#define SWITCHING_TOOLHEAD_PRIME_FEEDRATE 300 // (mm/min) Extruder prime feedrate
#define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400 // (mm/min) Extruder retract feedrate
#endif
#elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
#define SWITCHING_TOOLHEAD_Z_HOP 2 // (mm) Z raise for switching
@ -328,10 +334,10 @@
//#define PSU_NAME "Power Supply"
#if ENABLED(PSU_CONTROL)
#define PSU_ACTIVE_HIGH false // Set 'false' for ATX, 'true' for X-Box
#define PSU_ACTIVE_STATE LOW // Set 'LOW' for ATX, 'HIGH' for X-Box
//#define PSU_DEFAULT_OFF // Keep power off until enabled directly with M80
//#define PSU_POWERUP_DELAY 100 // (ms) Delay for the PSU to warm up to full power
//#define PSU_POWERUP_DELAY 250 // (ms) Delay for the PSU to warm up to full power
//#define AUTO_POWER_CONTROL // Enable automatic control of the PS_ON pin
#if ENABLED(AUTO_POWER_CONTROL)
@ -345,11 +351,10 @@
#endif
#endif
// @section temperature
//===========================================================================
//============================= Thermal Settings ============================
//===========================================================================
// @section temperature
/**
* --NORMAL IS 4.7kohm PULLUP!-- 1kohm pullup can be used on hotend sensor, using correct resistor and table
@ -369,8 +374,9 @@
* 202 : 200k thermistor - Copymaster 3D
* 3 : Mendel-parts thermistor (4.7k pullup)
* 4 : 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !!
* 5 : 100K thermistor - ATC Semitec 104GT-2/104NT-4-R025H42G (Used in ParCan & J-Head) (4.7k pullup)
* 5 : 100K thermistor - ATC Semitec 104GT-2/104NT-4-R025H42G (Used in ParCan, J-Head, and E3D) (4.7k pullup)
* 501 : 100K Zonestar (Tronxy X3A) Thermistor
* 502 : 100K Zonestar Thermistor used by hot bed in Zonestar Průša P802M
* 512 : 100k RPW-Ultra hotend thermistor (4.7k pullup)
* 6 : 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup)
* 7 : 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup)
@ -378,13 +384,16 @@
* 8 : 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup)
* 9 : 100k GE Sensing AL03006-58.2K-97-G1 (4.7k pullup)
* 10 : 100k RS thermistor 198-961 (4.7k pullup)
* 11 : 100k beta 3950 1% thermistor (4.7k pullup)
* 11 : 100k beta 3950 1% thermistor (Used in Keenovo AC silicone mats and most Wanhao i3 machines) (4.7k pullup)
* 12 : 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup) (calibrated for Makibox hot bed)
* 13 : 100k Hisens 3950 1% up to 300°C for hotend "Simple ONE " & "Hotend "All In ONE"
* 15 : 100k thermistor calibration for JGAurora A5 hotend
* 18 : ATC Semitec 204GT-2 (4.7k pullup) Dagoma.Fr - MKS_Base_DKU001327
* 20 : Pt100 with circuit in the Ultimainboard V2.x with 5v excitation (AVR)
* 21 : Pt100 with circuit in the Ultimainboard V2.x with 3.3v excitation (STM32 \ LPC176x....)
* 22 : 100k (hotend) with 4.7k pullup to 3.3V and 220R to analog input (as in GTM32 Pro vB)
* 23 : 100k (bed) with 4.7k pullup to 3.3v and 220R to analog input (as in GTM32 Pro vB)
* 30 : Kis3d Silicone heating mat 200W/300W with 6mm precision cast plate (EN AW 5083) NTC100K / B3950 (4.7k pullup)
* 201 : Pt100 with circuit in Overlord, similar to Ultimainboard V2.x
* 60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
* 61 : 100k Formbot / Vivedino 3950 350C thermistor 4.7k pullup
@ -400,7 +409,7 @@
* 52 : 200k thermistor - ATC Semitec 204GT-2 (1k pullup)
* 55 : 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan & J-Head) (1k pullup)
*
* 1047 : Pt1000 with 4k7 pullup
* 1047 : Pt1000 with 4k7 pullup (E3D)
* 1010 : Pt1000 with 1k pullup (non standard)
* 147 : Pt100 with 4k7 pullup
* 110 : Pt100 with 1k pullup (non standard)
@ -427,6 +436,12 @@
#define DUMMY_THERMISTOR_998_VALUE 25
#define DUMMY_THERMISTOR_999_VALUE 100
// Resistor values when using a MAX31865 (sensor -5)
// Sensor value is typically 100 (PT100) or 1000 (PT1000)
// Calibration value is typically 430 ohm for AdaFruit PT100 modules and 4300 ohm for AdaFruit PT1000 modules.
//#define MAX31865_SENSOR_OHMS 100
//#define MAX31865_CALIBRATION_OHMS 430
// Use temp sensor 1 as a redundant sensor with sensor 0. If the readings
// from the two sensors differ too much the print will be aborted.
//#define TEMP_SENSOR_1_AS_REDUNDANT
@ -468,56 +483,32 @@
//===========================================================================
//============================= PID Settings ================================
//===========================================================================
// PID Tuning Guide here: http://reprap.org/wiki/PID_Tuning
// PID Tuning Guide here: https://reprap.org/wiki/PID_Tuning
// Comment the following line to disable PID and enable bang-bang.
#define PIDTEMP
#define BANG_MAX 255 // Limits current to nozzle while in bang-bang mode; 255=full current
#define PID_MAX BANG_MAX // Limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current
#define PID_K1 0.95 // Smoothing factor within any PID loop
#if ENABLED(PIDTEMP)
//#define PID_EDIT_MENU // Add PID editing to the "Advanced Settings" menu. (~700 bytes of PROGMEM)
//#define PID_AUTOTUNE_MENU // Add PID auto-tuning to the "Advanced Settings" menu. (~250 bytes of PROGMEM)
//#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation.
//#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
//#define SLOW_PWM_HEATERS // PWM with very low frequency (roughly 0.125Hz=8s) and minimum state time of approximately 1s useful for heaters driven by a relay
//#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders)
// Set/get with gcode: M301 E[extruder number, 0-2]
#define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature
// is more than PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.
// If you are using a pre-configured hotend then you can use one of the value sets by uncommenting it
// Ultimaker
//#define DEFAULT_Kp 22.2
//#define DEFAULT_Ki 1.08
//#define DEFAULT_Kd 114
// Wanhao Duplicator i3
//#define DEFAULT_Kp 29
//#define DEFAULT_Ki 2.00
//#define DEFAULT_Kd 97
// Defaults from https://www.itsalllost.com/wanhao-i3-32bit-upgrade/
//#define DEFAULT_Kp 17.45
//#define DEFAULT_Ki 0.84
//#define DEFAULT_Kd 90.41
// MakerGear
//#define DEFAULT_Kp 7.0
//#define DEFAULT_Ki 0.1
//#define DEFAULT_Kd 12
// Mendel Parts V9 on 12V
//#define DEFAULT_Kp 63.0
//#define DEFAULT_Ki 2.25
//#define DEFAULT_Kd 440
// Defaults from PID Tuning
#define DEFAULT_Kp 23.66
#define DEFAULT_Ki 1.42
#define DEFAULT_Kd 98.72
#if ENABLED(PID_PARAMS_PER_HOTEND)
// Specify between 1 and HOTENDS values per array.
// If fewer than EXTRUDER values are provided, the last element will be repeated.
#define DEFAULT_Kp_LIST { 22.20, 22.20 }
#define DEFAULT_Ki_LIST { 1.08, 1.08 }
#define DEFAULT_Kd_LIST { 114.00, 114.00 }
#else
// Defaults from PID Tuning
#define DEFAULT_Kp 23.66
#define DEFAULT_Ki 1.42
#define DEFAULT_Kd 98.72
#endif
#endif // PIDTEMP
//===========================================================================
@ -553,36 +544,23 @@
//#define MIN_BED_POWER 0
//#define PID_BED_DEBUG // Sends debug data to the serial port.
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
//#define DEFAULT_bedKp 10.00
//#define DEFAULT_bedKi .023
//#define DEFAULT_bedKd 305.4
// Wanhao Duplicator i3
//#define DEFAULT_bedKp 249.52
//#define DEFAULT_bedKi 47.89
//#define DEFAULT_bedKd 325.03
// Defaults from https://www.itsalllost.com/wanhao-i3-32bit-upgrade/
//#define DEFAULT_bedKp 602.82
//#define DEFAULT_bedKi 114.98
//#define DEFAULT_bedKd 790.15
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
//from pidautotune
//#define DEFAULT_bedKp 97.1
//#define DEFAULT_bedKi 1.41
//#define DEFAULT_bedKd 1675.16
// Defaults from PID Tuning
#define DEFAULT_bedKp 148.74
#define DEFAULT_bedKi 29.72
#define DEFAULT_bedKd 496.30
// 120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
// from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
#define DEFAULT_bedKp 148.74
#define DEFAULT_bedKi 29.72
#define DEFAULT_bedKd 496.30
// FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
#endif // PIDTEMPBED
#if EITHER(PIDTEMP, PIDTEMPBED)
//#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation.
//#define PID_OPENLOOP // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
//#define SLOW_PWM_HEATERS // PWM with very low frequency (roughly 0.125Hz=8s) and minimum state time of approximately 1s useful for heaters driven by a relay
#define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature
// is more than PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.
#endif
// @section extruder
/**
@ -629,7 +607,7 @@
// @section machine
// Uncomment one of these options to enable CoreXY, CoreXZ, or CoreYZ kinematics
// Enable one of the options below for CoreXY, CoreXZ, or CoreYZ kinematics,
// either in the usual order or reversed
//#define COREXY
//#define COREXZ
@ -637,6 +615,7 @@
//#define COREYX
//#define COREZX
//#define COREZY
//#define MARKFORGED_XY // MarkForged. See https://reprap.org/forum/read.php?152,504042
//===========================================================================
//============================== Endstop Settings ===========================
@ -732,7 +711,7 @@
* Enable if your probe or endstops falsely trigger due to noise.
*
* - Higher values may affect repeatability or accuracy of some bed probes.
* - To fix noise install a 100nF ceramic capacitor inline with the switch.
* - To fix noise install a 100nF ceramic capacitor in parallel with the switch.
* - This feature is not required for common micro-switches mounted on PCBs
* based on the Makerbot design, which already have the 100nF capacitor.
*
@ -740,6 +719,9 @@
*/
//#define ENDSTOP_NOISE_THRESHOLD 2
// Check for stuck or disconnected endstops during homing moves.
//#define DETECT_BROKEN_ENDSTOP
//=============================================================================
//============================== Movement Settings ============================
//=============================================================================
@ -833,10 +815,12 @@
*
* See:
* https://reprap.org/forum/read.php?1,739819
* http://blog.kyneticcnc.com/2018/10/computing-junction-deviation-for-marlin.html
* https://blog.kyneticcnc.com/2018/10/computing-junction-deviation-for-marlin.html
*/
#if DISABLED(CLASSIC_JERK)
#define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge
#define JUNCTION_DEVIATION_MM 0.013 // (mm) Distance from real junction edge
#define JD_HANDLE_SMALL_SEGMENTS // Use curvature estimation instead of just the junction angle
// for small segments (< 1mm) with large junction angles (> 135°).
#endif
/**
@ -855,16 +839,19 @@
// @section probes
//
// See http://marlinfw.org/docs/configuration/probes.html
// See https://marlinfw.org/docs/configuration/probes.html
//
/**
* Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
*
* Enable this option for a probe connected to the Z Min endstop pin.
* Enable this option for a probe connected to the Z-MIN pin.
* The probe replaces the Z-MIN endstop and is used for Z homing.
* (Automatically enables USE_PROBE_FOR_Z_HOMING.)
*/
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
// Force the use of the probe for Z-axis homing
//#define USE_PROBE_FOR_Z_HOMING
/**
* Z_MIN_PROBE_PIN
*
@ -879,7 +866,6 @@
* - For simple switches connect...
* - normally-closed switches to GND and D32.
* - normally-open switches to 5V and D32.
*
*/
//#define Z_MIN_PROBE_PIN 32 // Pin 32 is the RAMPS default
@ -921,6 +907,11 @@
*/
#define BLTOUCH
/**
* Pressure sensor with a BLTouch-like interface
*/
//#define CREALITY_TOUCH
/**
* Touch-MI Probe by hotends.fr
*
@ -972,38 +963,48 @@
//
/**
* Z Probe to nozzle (X,Y) offset, relative to (0, 0).
* Nozzle-to-Probe offsets { X, Y, Z }
*
* In the following example the X and Y offsets are both positive:
* - Use a caliper or ruler to measure the distance from the tip of
* the Nozzle to the center-point of the Probe in the X and Y axes.
* - For the Z offset use your best known value and adjust at runtime.
* - Probe Offsets can be tuned at runtime with 'M851', LCD menus, babystepping, etc.
*
* #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
* Assuming the typical work area orientation:
* - Probe to RIGHT of the Nozzle has a Positive X offset
* - Probe to LEFT of the Nozzle has a Negative X offset
* - Probe in BACK of the Nozzle has a Positive Y offset
* - Probe in FRONT of the Nozzle has a Negative Y offset
*
* Some examples:
* #define NOZZLE_TO_PROBE_OFFSET { 10, 10, -1 } // Example "1"
* #define NOZZLE_TO_PROBE_OFFSET {-10, 5, -1 } // Example "2"
* #define NOZZLE_TO_PROBE_OFFSET { 5, -5, -1 } // Example "3"
* #define NOZZLE_TO_PROBE_OFFSET {-15,-10, -1 } // Example "4"
*
* +-- BACK ---+
* | |
* L | (+) P | R <-- probe (20,20)
* E | | I
* F | (-) N (+) | G <-- nozzle (10,10)
* T | | H
* | (-) | T
* | |
* | [+] |
* L | 1 | R <-- Example "1" (right+, back+)
* E | 2 | I <-- Example "2" ( left-, back+)
* F |[-] N [+]| G <-- Nozzle
* T | 3 | H <-- Example "3" (right+, front-)
* | 4 | T <-- Example "4" ( left-, front-)
* | [-] |
* O-- FRONT --+
* (0,0)
*
* Specify a Probe position as { X, Y, Z }
*/
#define NOZZLE_TO_PROBE_OFFSET { -33, -37, -1 }
// Most probes should stay away from the edges of the bed, but
// with NOZZLE_AS_PROBE this can be negative for a wider probing area.
#define MIN_PROBE_EDGE 10
#define PROBING_MARGIN 10
// X and Y axis travel speed (mm/m) between probes
#define XY_PROBE_SPEED 8000
// X and Y axis travel speed (mm/min) between probes
#define XY_PROBE_SPEED (133*60)
// Feedrate (mm/m) for the first approach when double-probing (MULTIPLE_PROBING == 2)
// Feedrate (mm/min) for the first approach when double-probing (MULTIPLE_PROBING == 2)
#define Z_PROBE_SPEED_FAST HOMING_FEEDRATE_Z
// Feedrate (mm/m) for the "accurate" probe of each point
// Feedrate (mm/min) for the "accurate" probe of each point
#define Z_PROBE_SPEED_SLOW (Z_PROBE_SPEED_FAST / 2)
/**
@ -1074,18 +1075,18 @@
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders
// Disables axis stepper immediately when it's not being used.
// Disable axis steppers immediately when they're not being stepped.
// WARNING: When motors turn off there is a chance of losing position accuracy!
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
// Warn on display about possibly reduced accuracy
// Turn off the display blinking that warns about possible accuracy reduction
//#define DISABLE_REDUCED_ACCURACY_WARNING
// @section extruder
#define DISABLE_E false // For all extruders
#define DISABLE_E false // Disable the extruder when not stepping
#define DISABLE_INACTIVE_EXTRUDER // Keep only the active extruder enabled
// @section machine
@ -1173,14 +1174,14 @@
*
* RAMPS-based boards use SERVO3_PIN for the first runout sensor.
* For other boards you may need to define FIL_RUNOUT_PIN, FIL_RUNOUT2_PIN, etc.
* By default the firmware assumes HIGH=FILAMENT PRESENT.
*/
//#define FILAMENT_RUNOUT_SENSOR
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
#define FIL_RUNOUT_INVERTING false // Set to true to invert the logic of the sensor.
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
//#define FIL_RUNOUT_PULLDOWN // Use internal pulldown for filament runout pins.
#define FIL_RUNOUT_ENABLED_DEFAULT true // Enable the sensor on startup. Override with M412 followed by M500.
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
#define FIL_RUNOUT_STATE LOW // Pin state indicating that filament is NOT present.
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
//#define FIL_RUNOUT_PULLDOWN // Use internal pulldown for filament runout pins.
// Set one or more commands to execute on filament runout.
// (After 'M412 H' Marlin will ask the host to handle the process.)
@ -1370,7 +1371,6 @@
*/
//#define Z_PROBE_END_SCRIPT "G1 Z10 F12000\nG1 X15 Y330\nG1 Z0.5\nG1 Z10"
// @section homing
// The center of the bed is at (X=0, Y=0)
@ -1388,17 +1388,17 @@
//
// - Allow Z homing only after X and Y homing AND stepper drivers still enabled.
// - If stepper drivers time out, it will need X and Y homing again before Z homing.
// - Move the Z probe (or nozzle) to a defined XY point before Z Homing when homing all axes (G28).
// - Move the Z probe (or nozzle) to a defined XY point before Z Homing.
// - Prevent Z homing when the Z probe is outside bed area.
//
#define Z_SAFE_HOMING
#if ENABLED(Z_SAFE_HOMING)
#define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE) / 2) // X point for Z homing when homing all axes (G28).
#define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2) // Y point for Z homing when homing all axes (G28).
#define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing
#define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing
#endif
// Homing speeds (mm/m)
// Homing speeds (mm/min)
#define HOMING_FEEDRATE_XY (50*60)
#define HOMING_FEEDRATE_Z (4*60)
@ -1533,8 +1533,11 @@
#if ENABLED(NOZZLE_PARK_FEATURE)
// Specify a park position as { X, Y, Z_raise }
#define NOZZLE_PARK_POINT { (X_MIN_POS + 10), (Y_MAX_POS - 10), 20 }
#define NOZZLE_PARK_XY_FEEDRATE 80 // (mm/s) X and Y axes feedrate (also used for delta Z axis)
#define NOZZLE_PARK_Z_FEEDRATE 5 // (mm/s) Z axis feedrate (not used for delta printers)
//#define NOZZLE_PARK_X_ONLY // X move only is required to park
//#define NOZZLE_PARK_Y_ONLY // Y move only is required to park
#define NOZZLE_PARK_Z_RAISE_MIN 2 // (mm) Always raise Z by at least this distance
#define NOZZLE_PARK_XY_FEEDRATE 80 // (mm/s) X and Y axes feedrate (also used for delta Z axis)
#define NOZZLE_PARK_Z_FEEDRATE 5 // (mm/s) Z axis feedrate (not used for delta printers)
#endif
/**
@ -1573,7 +1576,6 @@
*
* Caveats: The ending Z should be the same as starting Z.
* Attention: EXPERIMENTAL. G-code arguments may change.
*
*/
//#define NOZZLE_CLEAN_FEATURE
@ -1599,8 +1601,15 @@
// Move the nozzle to the initial position after cleaning
#define NOZZLE_CLEAN_GOBACK
// Enable for a purge/clean station that's always at the gantry height (thus no Z move)
// For a purge/clean station that's always at the gantry height (thus no Z move)
//#define NOZZLE_CLEAN_NO_Z
// For a purge/clean station mounted on the X axis
//#define NOZZLE_CLEAN_NO_Y
// Explicit wipe G-code script applies to a G12 with no arguments.
//#define WIPE_SEQUENCE_COMMANDS "G1 X-17 Y25 Z10 F4000\nG1 Z1\nM114\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 Z15\nM400\nG0 X-10.0 Y-9.0"
#endif
/**
@ -1634,6 +1643,37 @@
*/
#define PRINTCOUNTER
/**
* Password
*
* Set a numerical password for the printer which can be requested:
*
* - When the printer boots up
* - Upon opening the 'Print from Media' Menu
* - When SD printing is completed or aborted
*
* The following G-codes can be used:
*
* M510 - Lock Printer. Blocks all commands except M511.
* M511 - Unlock Printer.
* M512 - Set, Change and Remove Password.
*
* If you forget the password and get locked out you'll need to re-flash
* the firmware with the feature disabled, reset EEPROM, and (optionally)
* re-flash the firmware again with this feature enabled.
*/
//#define PASSWORD_FEATURE
#if ENABLED(PASSWORD_FEATURE)
#define PASSWORD_LENGTH 4 // (#) Number of digits (1-9). 3 or 4 is recommended
#define PASSWORD_ON_STARTUP
#define PASSWORD_UNLOCK_GCODE // Unlock with the M511 P<password> command. Disable to prevent brute-force attack.
#define PASSWORD_CHANGE_GCODE // Change the password with M512 P<old> S<new>.
//#define PASSWORD_ON_SD_PRINT_MENU // This does not prevent gcodes from running
//#define PASSWORD_AFTER_SD_PRINT_END
//#define PASSWORD_AFTER_SD_PRINT_ABORT
//#include "Configuration_Secure.h" // External file with PASSWORD_DEFAULT_VALUE
#endif
//=============================================================================
//============================= LCD and SD support ============================
//=============================================================================
@ -1645,10 +1685,10 @@
*
* Select the language to display on the LCD. These languages are available:
*
* en, an, bg, ca, cz, da, de, el, el_gr, es, eu, fi, fr, gl, hr, it, jp_kana,
* ko_KR, nl, pl, pt, pt_br, ru, sk, tr, uk, vi, zh_CN, zh_TW, test
* en, an, bg, ca, cz, da, de, el, el_gr, es, eu, fi, fr, gl, hr, hu, it,
* jp_kana, ko_KR, nl, pl, pt, pt_br, ro, ru, sk, tr, uk, vi, zh_CN, zh_TW, test
*
* :{ 'en':'English', 'an':'Aragonese', 'bg':'Bulgarian', 'ca':'Catalan', 'cz':'Czech', 'da':'Danish', 'de':'German', 'el':'Greek', 'el_gr':'Greek (Greece)', 'es':'Spanish', 'eu':'Basque-Euskera', 'fi':'Finnish', 'fr':'French', 'gl':'Galician', 'hr':'Croatian', 'it':'Italian', 'jp_kana':'Japanese', 'ko_KR':'Korean (South Korea)', 'nl':'Dutch', 'pl':'Polish', 'pt':'Portuguese', 'pt_br':'Portuguese (Brazilian)', 'ru':'Russian', 'sk':'Slovak', 'tr':'Turkish', 'uk':'Ukrainian', 'vi':'Vietnamese', 'zh_CN':'Chinese (Simplified)', 'zh_TW':'Chinese (Traditional)', 'test':'TEST' }
* :{ 'en':'English', 'an':'Aragonese', 'bg':'Bulgarian', 'ca':'Catalan', 'cz':'Czech', 'da':'Danish', 'de':'German', 'el':'Greek', 'el_gr':'Greek (Greece)', 'es':'Spanish', 'eu':'Basque-Euskera', 'fi':'Finnish', 'fr':'French', 'gl':'Galician', 'hr':'Croatian', 'hu':'Hungarian', 'it':'Italian', 'jp_kana':'Japanese', 'ko_KR':'Korean (South Korea)', 'nl':'Dutch', 'pl':'Polish', 'pt':'Portuguese', 'pt_br':'Portuguese (Brazilian)', 'ro':'Romanian', 'ru':'Russian', 'sk':'Slovak', 'tr':'Turkish', 'uk':'Ukrainian', 'vi':'Vietnamese', 'zh_CN':'Chinese (Simplified)', 'zh_TW':'Chinese (Traditional)', 'test':'TEST' }
*/
#define LCD_LANGUAGE en
@ -1670,16 +1710,16 @@
* - Click the controller to view the LCD menu
* - The LCD will display Japanese, Western, or Cyrillic text
*
* See http://marlinfw.org/docs/development/lcd_language.html
* See https://marlinfw.org/docs/development/lcd_language.html
*
* :['JAPANESE', 'WESTERN', 'CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
/**
* Info Screen Style (0:Classic, 1:Prusa)
* Info Screen Style (0:Classic, 1:Průša)
*
* :[0:'Classic', 1:'Prusa']
* :[0:'Classic', 1:'Průša']
*/
#define LCD_INFO_SCREEN_STYLE 0
@ -1688,7 +1728,6 @@
*
* SD Card support is disabled by default. If your controller has an SD slot,
* you must uncomment the following option or it won't work.
*
*/
#define SDSUPPORT
@ -1797,7 +1836,7 @@
//
// RepRapDiscount Smart Controller.
// http://reprap.org/wiki/RepRapDiscount_Smart_Controller
// https://reprap.org/wiki/RepRapDiscount_Smart_Controller
//
// Note: Usually sold with a white PCB.
//
@ -1821,13 +1860,13 @@
//
// PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)
// http://reprap.org/wiki/PanelOne
// https://reprap.org/wiki/PanelOne
//
//#define PANEL_ONE
//
// GADGETS3D G3D LCD/SD Controller
// http://reprap.org/wiki/RAMPS_1.3/1.4_GADGETS3D_Shield_with_Panel
// https://reprap.org/wiki/RAMPS_1.3/1.4_GADGETS3D_Shield_with_Panel
//
// Note: Usually sold with a blue PCB.
//
@ -1914,7 +1953,7 @@
//
// 2-wire Non-latching LCD SR from https://goo.gl/aJJ4sH
// LCD configuration: http://reprap.org/wiki/SAV_3D_LCD
// LCD configuration: https://reprap.org/wiki/SAV_3D_LCD
//
//#define SAV_3DLCD
@ -1925,6 +1964,14 @@
//
//#define FF_INTERFACEBOARD
//
// TFT GLCD Panel with Marlin UI
// Panel connected to main board by SPI or I2C interface.
// See https://github.com/Serhiy-K/TFTGLCDAdapter
//
//#define TFTGLCD_PANEL_SPI
//#define TFTGLCD_PANEL_I2C
//=============================================================================
//======================= LCD / Controller Selection =======================
//========================= (Graphical LCDs) ========================
@ -1936,10 +1983,12 @@
// IMPORTANT: The U8glib library is required for Graphical Display!
// https://github.com/olikraus/U8glib_Arduino
//
// NOTE: If the LCD is unresponsive you may need to reverse the plugs.
//
//
// RepRapDiscount FULL GRAPHIC Smart Controller
// http://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller
// https://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller
//
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
@ -1952,20 +2001,20 @@
//
// Activate one of these if you have a Panucatt Devices
// Viki 2.0 or mini Viki with Graphic LCD
// http://panucatt.com
// https://www.panucatt.com
//
//#define VIKI2
//#define miniVIKI
//
// MakerLab Mini Panel with graphic
// controller and SD support - http://reprap.org/wiki/Mini_panel
// controller and SD support - https://reprap.org/wiki/Mini_panel
//
//#define MINIPANEL
//
// MaKr3d Makr-Panel with graphic controller and SD support.
// http://reprap.org/wiki/MaKr3d_MaKrPanel
// https://reprap.org/wiki/MaKr3d_MaKrPanel
//
//#define MAKRPANEL
@ -2008,6 +2057,12 @@
//
//#define MKS_MINI_12864
//
// MKS LCD12864A/B with graphic controller and SD support. Follows MKS_MINI_12864 pinout.
// https://www.aliexpress.com/item/33018110072.html
//
//#define MKS_LCD12864
//
// FYSETC variant of the MINI12864 graphic controller with SD support
// https://wiki.fysetc.com/Mini12864_Panel/
@ -2015,7 +2070,7 @@
//#define FYSETC_MINI_12864_X_X // Type C/D/E/F. No tunable RGB Backlight by default
//#define FYSETC_MINI_12864_1_2 // Type C/D/E/F. Simple RGB Backlight (always on)
//#define FYSETC_MINI_12864_2_0 // Type A/B. Discreet RGB Backlight
//#define FYSETC_MINI_12864_2_1 // Type A/B. Neopixel RGB Backlight
//#define FYSETC_MINI_12864_2_1 // Type A/B. NeoPixel RGB Backlight
//#define FYSETC_GENERIC_12864_1_1 // Larger display with basic ON/OFF backlight.
//
@ -2049,7 +2104,7 @@
//
// Silvergate GLCD controller
// http://github.com/android444/Silvergate
// https://github.com/android444/Silvergate
//
//#define SILVER_GATE_GLCD_CONTROLLER
@ -2077,14 +2132,21 @@
//#define OLED_PANEL_TINYBOY2
//
// MKS OLED 1.3" 128 × 64 FULL GRAPHICS CONTROLLER
// http://reprap.org/wiki/MKS_12864OLED
// MKS OLED 1.3" 128×64 FULL GRAPHICS CONTROLLER
// https://reprap.org/wiki/MKS_12864OLED
//
// Tiny, but very sharp OLED display
//
//#define MKS_12864OLED // Uses the SH1106 controller (default)
//#define MKS_12864OLED_SSD1306 // Uses the SSD1306 controller
//
// Zonestar OLED 128×64 FULL GRAPHICS CONTROLLER
//
//#define ZONESTAR_12864LCD // Graphical (DOGM) with ST7920 controller
//#define ZONESTAR_12864OLED // 1.3" OLED with SH1106 controller (default)
//#define ZONESTAR_12864OLED_SSD1306 // 0.96" OLED with SSD1306 controller
//
// Einstart S OLED SSD1306
//
@ -2095,21 +2157,31 @@
//
//#define OVERLORD_OLED
//
// FYSETC OLED 2.42" 128×64 FULL GRAPHICS CONTROLLER with WS2812 RGB
// Where to find : https://www.aliexpress.com/item/4000345255731.html
//#define FYSETC_242_OLED_12864 // Uses the SSD1309 controller
//=============================================================================
//========================== Extensible UI Displays ===========================
//=============================================================================
//
// DGUS Touch Display with DWIN OS. (Choose one.)
// ORIGIN : https://www.aliexpress.com/item/32993409517.html
// FYSETC : https://www.aliexpress.com/item/32961471929.html
//
//#define DGUS_LCD_UI_ORIGIN
//#define DGUS_LCD_UI_FYSETC
//#define DGUS_LCD_UI_HIPRECY
//
// Touch-screen LCD for Malyan M200 printers
// Touch-screen LCD for Malyan M200/M300 printers
//
//#define MALYAN_LCD
#if ENABLED(MALYAN_LCD)
#define LCD_SERIAL_PORT 1 // Default is 1 for Malyan M200
#endif
//
// Touch UI for FTDI EVE (FT800/FT810) displays
@ -2117,42 +2189,100 @@
//
//#define TOUCH_UI_FTDI_EVE
//
// Touch-screen LCD for Anycubic printers
//
//#define ANYCUBIC_LCD_I3MEGA
//#define ANYCUBIC_LCD_CHIRON
#if EITHER(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON)
#define LCD_SERIAL_PORT 3 // Default is 3 for Anycubic
//#define ANYCUBIC_LCD_DEBUG
#endif
//
// Third-party or vendor-customized controller interfaces.
// Sources should be installed in 'src/lcd/extensible_ui'.
//
//#define EXTENSIBLE_UI
#if ENABLED(EXTENSIBLE_UI)
//#define EXTUI_LOCAL_BEEPER // Enables use of local Beeper pin with external display
#endif
//=============================================================================
//=============================== Graphical TFTs ==============================
//=============================================================================
//
// FSMC display (MKS Robin, Alfawise U20, JGAurora A5S, REXYZ A1, etc.)
//
//#define FSMC_GRAPHICAL_TFT
/**
* TFT Type - Select your Display type
*
* Available options are:
* MKS_TS35_V2_0,
* MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32, MKS_ROBIN_TFT35,
* MKS_ROBIN_TFT43, MKS_ROBIN_TFT_V1_1R
* TFT_TRONXY_X5SA, ANYCUBIC_TFT35, LONGER_LK_TFT28
* TFT_GENERIC
*
* For TFT_GENERIC, you need to configure these 3 options:
* Driver: TFT_DRIVER
* Current Drivers are: AUTO, ST7735, ST7789, ST7796, R61505, ILI9328, ILI9341, ILI9488
* Resolution: TFT_WIDTH and TFT_HEIGHT
* Interface: TFT_INTERFACE_FSMC or TFT_INTERFACE_SPI
*/
//#define TFT_GENERIC
/**
* TFT UI - User Interface Selection. Enable one of the following options:
*
* TFT_CLASSIC_UI - Emulated DOGM - 128x64 Upscaled
* TFT_COLOR_UI - Marlin Default Menus, Touch Friendly, using full TFT capabilities
* TFT_LVGL_UI - A Modern UI using LVGL
*
* For LVGL_UI also copy the 'assets' folder from the build directory to the
* root of your SD card, together with the compiled firmware.
*/
//#define TFT_CLASSIC_UI
//#define TFT_COLOR_UI
//#define TFT_LVGL_UI
/**
* TFT Rotation. Set to one of the following values:
*
* TFT_ROTATE_90, TFT_ROTATE_90_MIRROR_X, TFT_ROTATE_90_MIRROR_Y,
* TFT_ROTATE_180, TFT_ROTATE_180_MIRROR_X, TFT_ROTATE_180_MIRROR_Y,
* TFT_ROTATE_270, TFT_ROTATE_270_MIRROR_X, TFT_ROTATE_270_MIRROR_Y,
* TFT_MIRROR_X, TFT_MIRROR_Y, TFT_NO_ROTATION
*/
//#define TFT_ROTATION TFT_NO_ROTATION
//=============================================================================
//============================ Other Controllers ============================
//=============================================================================
//
// Ender-3 v2 OEM display. A DWIN display with Rotary Encoder.
//
//#define DWIN_CREALITY_LCD
//
// ADS7843/XPT2046 ADC Touchscreen such as ILI9341 2.8
//
//#define TOUCH_BUTTONS
#if ENABLED(TOUCH_BUTTONS)
//#define TOUCH_SCREEN
#if ENABLED(TOUCH_SCREEN)
#define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens
#define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus
#define XPT2046_X_CALIBRATION 12316
#define XPT2046_Y_CALIBRATION -8981
#define XPT2046_X_OFFSET -43
#define XPT2046_Y_OFFSET 257
#define TOUCH_SCREEN_CALIBRATION
//#define XPT2046_X_CALIBRATION 12316
//#define XPT2046_Y_CALIBRATION -8981
//#define XPT2046_X_OFFSET -43
//#define XPT2046_Y_OFFSET 257
#endif
//
// RepRapWorld REPRAPWORLD_KEYPAD v1.1
// http://reprapworld.com/?products_details&products_id=202&cPath=1591_1626
// https://reprapworld.com/products/electronics/ramps/keypad_v1_0_fully_assembled/
//
//#define REPRAPWORLD_KEYPAD
//#define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0 // (mm) Distance to move per key-press
@ -2163,6 +2293,10 @@
// @section extras
// Set number of user-controlled fans. Disable to use all board-defined fans.
// :[1,2,3,4,5,6,7,8]
//#define NUM_M106_FANS 1
// Increase the FAN PWM frequency. Removes the PWM noise but increases heating in the FET/Arduino
//#define FAST_PWM_FAN
@ -2189,9 +2323,6 @@
// then the BLUE led is on. Otherwise the RED led is on. (1C hysteresis)
//#define TEMP_STAT_LEDS
// SkeinForge sends the wrong arc g-codes when using Arc Point as fillet procedure
//#define SF_ARC_FIX
// Support for the BariCUDA Paste Extruder
//#define BARICUDA
@ -2202,7 +2333,6 @@
//#define PCA9632
// Support for PCA9533 PWM LED driver
// https://github.com/mikeshub/SailfishRGB_LED
//#define PCA9533
/**
@ -2214,18 +2344,17 @@
* Adds the M150 command to set the LED (or LED strip) color.
* If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of
* luminance values can be set from 0 to 255.
* For Neopixel LED an overall brightness parameter is also available.
* For NeoPixel LED an overall brightness parameter is also available.
*
* *** CAUTION ***
* LED Strips require a MOSFET Chip between PWM lines and LEDs,
* as the Arduino cannot handle the current the LEDs will require.
* Failure to follow this precaution can destroy your Arduino!
* NOTE: A separate 5V power supply is required! The Neopixel LED needs
* NOTE: A separate 5V power supply is required! The NeoPixel LED needs
* more current than the Arduino 5V linear regulator can produce.
* *** CAUTION ***
*
* LED Type. Enable only one of the following two options.
*
*/
//#define RGB_LED
//#define RGBW_LED
@ -2237,19 +2366,29 @@
//#define RGB_LED_W_PIN -1
#endif
// Support for Adafruit Neopixel LED driver
// Support for Adafruit NeoPixel LED driver
//#define NEOPIXEL_LED
#if ENABLED(NEOPIXEL_LED)
#define NEOPIXEL_TYPE NEO_GRBW // NEO_GRBW / NEO_GRB - four/three channel driver type (defined in Adafruit_NeoPixel.h)
#define NEOPIXEL_PIN 4 // LED driving pin
//#define NEOPIXEL2_TYPE NEOPIXEL_TYPE
//#define NEOPIXEL2_PIN 5
#define NEOPIXEL_PIXELS 30 // Number of LEDs in the strip, larger of 2 strips if 2 neopixel strips are used
#define NEOPIXEL_PIXELS 30 // Number of LEDs in the strip. (Longest strip when NEOPIXEL2_SEPARATE is disabled.)
#define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Disable to change all LEDs at once.
#define NEOPIXEL_BRIGHTNESS 127 // Initial brightness (0-255)
//#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup
// Use a single Neopixel LED for static (background) lighting
// Support for second Adafruit NeoPixel LED driver controlled with M150 S1 ...
//#define NEOPIXEL2_SEPARATE
#if ENABLED(NEOPIXEL2_SEPARATE)
#define NEOPIXEL2_PIXELS 15 // Number of LEDs in the second strip
#define NEOPIXEL2_BRIGHTNESS 127 // Initial brightness (0-255)
#define NEOPIXEL2_STARTUP_TEST // Cycle through colors at startup
#else
//#define NEOPIXEL2_INSERIES // Default behavior is NeoPixel 2 in parallel
#endif
// Use a single NeoPixel LED for static (background) lighting
//#define NEOPIXEL_BKGD_LED_INDEX 0 // Index of the LED to use
//#define NEOPIXEL_BKGD_COLOR { 255, 255, 255, 0 } // R, G, B, W
#endif
@ -2269,17 +2408,12 @@
#define PRINTER_EVENT_LEDS
#endif
/**
* R/C SERVO support
* Sponsored by TrinityLabs, Reworked by codexmas
*/
/**
* Number of servos
*
* For some servo-related options NUM_SERVOS will be set automatically.
* Set this manually if there are extra servos needing manual control.
* Leave undefined or set to 0 to entirely disable the servo subsystem.
* Set to 0 to turn off servo support.
*/
//#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command
@ -2291,5 +2425,5 @@
// Only power servos during movement, otherwise leave off to prevent jitter
//#define DEACTIVATE_SERVOS_AFTER_MOVE
// Allow servo angle to be edited and saved to EEPROM
// Edit servo angles with M281 and save to EEPROM with M500
//#define EDITABLE_SERVO_ANGLES

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@
# Detailed instructions for using the makefile:
#
# 1. Modify the line containing "ARDUINO_INSTALL_DIR" to point to the directory that
# contains the Arduino installation (for example, under Mac OS X, this
# contains the Arduino installation (for example, under macOS, this
# might be /Applications/Arduino.app/Contents/Resources/Java).
#
# 2. Modify the line containing "UPLOAD_PORT" to refer to the filename
@ -22,8 +22,10 @@
# (e.g. UPLOAD_PORT = /dev/tty.USB0). If the exact name of this file
# changes, you can use * as a wild card (e.g. UPLOAD_PORT = /dev/tty.usb*).
#
# 3. Set the line containing "MCU" to match your board's processor.
# Older one's are atmega8 based, newer ones like Arduino Mini, Bluetooth
# 3. Set the line containing "MCU" to match your board's processor. Set
# "PROG_MCU" as the AVR part name corresponding to "MCU". You can use the
# following command to get a list of correspondences: `avrdude -c alf -p x`
# Older boards are atmega8 based, newer ones like Arduino Mini, Bluetooth
# or Diecimila have the atmega168. If you're using a LilyPad Arduino,
# change F_CPU to 8000000. If you are using Gen7 electronics, you
# probably need to use 20000000. Either way, you must regenerate
@ -34,18 +36,18 @@
# 5. Type "make upload", reset your Arduino board, and press enter to
# upload your program to the Arduino board.
#
# Note that all settings at the top of this file can be overriden from
# Note that all settings at the top of this file can be overridden from
# the command line with, for example, "make HARDWARE_MOTHERBOARD=71"
#
# To compile for RAMPS (atmega2560) with Arduino 1.6.9 at root/arduino you would use...
#
# make ARDUINO_VERSION=10609 AVR_TOOLS_PATH=/root/arduino/hardware/tools/avr/bin/ \
# HARDWARE_MOTHERBOARD=33 ARDUINO_INSTALL_DIR=/root/arduino
# HARDWARE_MOTHERBOARD=1200 ARDUINO_INSTALL_DIR=/root/arduino
#
# To compile and upload simply add "upload" to the end of the line...
#
# make ARDUINO_VERSION=10609 AVR_TOOLS_PATH=/root/arduino/hardware/tools/avr/bin/ \
# HARDWARE_MOTHERBOARD=33 ARDUINO_INSTALL_DIR=/root/arduino upload
# HARDWARE_MOTHERBOARD=1200 ARDUINO_INSTALL_DIR=/root/arduino upload
#
# If uploading doesn't work try adding the parameter "AVRDUDE_PROGRAMMER=wiring" or
# start upload manually (using stk500) like so:
@ -57,7 +59,26 @@
#
# This defines the board to compile for (see boards.h for your board's ID)
HARDWARE_MOTHERBOARD ?= 11
HARDWARE_MOTHERBOARD ?= 1020
ifeq ($(OS),Windows_NT)
# Windows
ARDUINO_INSTALL_DIR ?= ${HOME}/Arduino
ARDUINO_USER_DIR ?= ${HOME}/Arduino
else
UNAME_S := $(shell uname -s)
ifeq ($(UNAME_S),Linux)
# Linux
ARDUINO_INSTALL_DIR ?= /usr/share/arduino
ARDUINO_USER_DIR ?= ${HOME}/Arduino
endif
ifeq ($(UNAME_S),Darwin)
# Darwin (macOS)
ARDUINO_INSTALL_DIR ?= /Applications/Arduino.app/Contents/Java
ARDUINO_USER_DIR ?= ${HOME}/Documents/Arduino
AVR_TOOLS_PATH ?= /Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/
endif
endif
# Arduino source install directory, and version number
# On most linuxes this will be /usr/share/arduino
@ -67,38 +88,44 @@ ARDUINO_VERSION ?= 106
# The installed Libraries are in the User folder
ARDUINO_USER_DIR ?= ${HOME}/Arduino
# You can optionally set a path to the avr-gcc tools. Requires a trailing slash. (ex: /usr/local/avr-gcc/bin)
# You can optionally set a path to the avr-gcc tools.
# Requires a trailing slash. For example, /usr/local/avr-gcc/bin/
AVR_TOOLS_PATH ?=
#Programmer configuration
# Programmer configuration
UPLOAD_RATE ?= 57600
AVRDUDE_PROGRAMMER ?= arduino
# on most linuxes this will be /dev/ttyACM0 or /dev/ttyACM1
# On most linuxes this will be /dev/ttyACM0 or /dev/ttyACM1
UPLOAD_PORT ?= /dev/ttyUSB0
#Directory used to build files in, contains all the build files, from object files to the final hex file
#on linux it is best to put an absolute path like /home/username/tmp .
# Directory used to build files in, contains all the build files, from object
# files to the final hex file on linux it is best to put an absolute path
# like /home/username/tmp .
BUILD_DIR ?= applet
# This defines whether Liquid_TWI2 support will be built
LIQUID_TWI2 ?= 0
# this defines if Wire is needed
# This defines if Wire is needed
WIRE ?= 0
# this defines if U8GLIB is needed (may require RELOC_WORKAROUND)
U8GLIB ?= 1
# This defines if Tone is needed (i.e SPEAKER is defined in Configuration.h)
# Disabling this (and SPEAKER) saves approximatively 350 bytes of memory.
TONE ?= 1
# this defines whether to include the Trinamic TMCStepper library
TMC ?= 1
# This defines if U8GLIB is needed (may require RELOC_WORKAROUND)
U8GLIB ?= 0
# this defines whether to include the AdaFruit NeoPixel library
# This defines whether to include the Trinamic TMCStepper library
TMC ?= 0
# This defines whether to include the AdaFruit NeoPixel library
NEOPIXEL ?= 0
############
# Try to automatically determine whether RELOC_WORKAROUND is needed based
# on GCC versions:
# http://www.avrfreaks.net/comment/1789106#comment-1789106
# https://www.avrfreaks.net/comment/1789106#comment-1789106
CC_MAJ:=$(shell $(CC) -dM -E - < /dev/null | grep __GNUC__ | cut -f3 -d\ )
CC_MIN:=$(shell $(CC) -dM -E - < /dev/null | grep __GNUC_MINOR__ | cut -f3 -d\ )
@ -170,105 +197,115 @@ else ifeq ($(HARDWARE_MOTHERBOARD),1100)
else ifeq ($(HARDWARE_MOTHERBOARD),1101)
# Velleman K8400 Controller (derived from 3Drag Controller)
else ifeq ($(HARDWARE_MOTHERBOARD),1102)
# 2PrintBeta BAM&DICE with STK drivers
# Velleman K8600 Controller (Vertex Nano)
else ifeq ($(HARDWARE_MOTHERBOARD),1103)
# 2PrintBeta BAM&DICE Due with STK drivers
# Velleman K8800 Controller (Vertex Delta)
else ifeq ($(HARDWARE_MOTHERBOARD),1104)
# MKS BASE v1.0
# 2PrintBeta BAM&DICE with STK drivers
else ifeq ($(HARDWARE_MOTHERBOARD),1105)
# MKS v1.4 with A4982 stepper drivers
# 2PrintBeta BAM&DICE Due with STK drivers
else ifeq ($(HARDWARE_MOTHERBOARD),1106)
# MKS v1.5 with Allegro A4982 stepper drivers
# MKS BASE v1.0
else ifeq ($(HARDWARE_MOTHERBOARD),1107)
# MKS v1.6 with Allegro A4982 stepper drivers
# MKS v1.4 with A4982 stepper drivers
else ifeq ($(HARDWARE_MOTHERBOARD),1108)
# MKS BASE 1.0 with Heroic HR4982 stepper drivers
# MKS v1.5 with Allegro A4982 stepper drivers
else ifeq ($(HARDWARE_MOTHERBOARD),1109)
# MKS GEN v1.3 or 1.4
# MKS v1.6 with Allegro A4982 stepper drivers
else ifeq ($(HARDWARE_MOTHERBOARD),1110)
# MKS GEN L
# MKS BASE 1.0 with Heroic HR4982 stepper drivers
else ifeq ($(HARDWARE_MOTHERBOARD),1111)
# zrib V2.0 control board (Chinese knock off RAMPS replica)
# MKS GEN v1.3 or 1.4
else ifeq ($(HARDWARE_MOTHERBOARD),1112)
# BigTreeTech or BIQU KFB2.0
# MKS GEN L
else ifeq ($(HARDWARE_MOTHERBOARD),1113)
# Felix 2.0+ Electronics Board (RAMPS like)
# zrib V2.0 control board (Chinese knock off RAMPS replica)
else ifeq ($(HARDWARE_MOTHERBOARD),1114)
# Invent-A-Part RigidBoard
# BigTreeTech or BIQU KFB2.0
else ifeq ($(HARDWARE_MOTHERBOARD),1115)
# Invent-A-Part RigidBoard V2
# Felix 2.0+ Electronics Board (RAMPS like)
else ifeq ($(HARDWARE_MOTHERBOARD),1116)
# Sainsmart 2-in-1 board
# Invent-A-Part RigidBoard
else ifeq ($(HARDWARE_MOTHERBOARD),1117)
# Ultimaker
# Invent-A-Part RigidBoard V2
else ifeq ($(HARDWARE_MOTHERBOARD),1118)
# Ultimaker (Older electronics. Pre 1.5.4. This is rare)
# Sainsmart 2-in-1 board
else ifeq ($(HARDWARE_MOTHERBOARD),1119)
MCU ?= atmega1280
# Ultimaker
else ifeq ($(HARDWARE_MOTHERBOARD),1120)
# Ultimaker (Older electronics. Pre 1.5.4. This is rare)
else ifeq ($(HARDWARE_MOTHERBOARD),1121)
MCU ?= atmega1280
PROG_MCU ?= m1280
# Azteeg X3
else ifeq ($(HARDWARE_MOTHERBOARD),1120)
# Azteeg X3 Pro
else ifeq ($(HARDWARE_MOTHERBOARD),1121)
# Ultimainboard 2.x (Uses TEMP_SENSOR 20)
else ifeq ($(HARDWARE_MOTHERBOARD),1122)
# Rumba
# Azteeg X3 Pro
else ifeq ($(HARDWARE_MOTHERBOARD),1123)
# Raise3D Rumba
# Ultimainboard 2.x (Uses TEMP_SENSOR 20)
else ifeq ($(HARDWARE_MOTHERBOARD),1124)
# Rapide Lite RL200 Rumba
# Rumba
else ifeq ($(HARDWARE_MOTHERBOARD),1125)
# Formbot T-Rex 2 Plus
# Raise3D Rumba
else ifeq ($(HARDWARE_MOTHERBOARD),1126)
# Formbot T-Rex 3
# Rapide Lite RL200 Rumba
else ifeq ($(HARDWARE_MOTHERBOARD),1127)
# Formbot Raptor
# Formbot T-Rex 2 Plus
else ifeq ($(HARDWARE_MOTHERBOARD),1128)
# Formbot Raptor 2
# Formbot T-Rex 3
else ifeq ($(HARDWARE_MOTHERBOARD),1129)
# bq ZUM Mega 3D
# Formbot Raptor
else ifeq ($(HARDWARE_MOTHERBOARD),1130)
# MakeBoard Mini v2.1.2 is a control board sold by MicroMake
# Formbot Raptor 2
else ifeq ($(HARDWARE_MOTHERBOARD),1131)
# TriGorilla Anycubic version 1.3 based on RAMPS EFB
# bq ZUM Mega 3D
else ifeq ($(HARDWARE_MOTHERBOARD),1132)
# TriGorilla Anycubic version 1.4 based on RAMPS EFB
# MakeBoard Mini v2.1.2 is a control board sold by MicroMake
else ifeq ($(HARDWARE_MOTHERBOARD),1133)
# TriGorilla Anycubic version 1.4 Rev 1.1
# TriGorilla Anycubic version 1.3 based on RAMPS EFB
else ifeq ($(HARDWARE_MOTHERBOARD),1134)
# Creality: Ender-4, CR-8
# TriGorilla Anycubic version 1.4 based on RAMPS EFB
else ifeq ($(HARDWARE_MOTHERBOARD),1135)
# Creality: CR10S, CR20, CR-X
# TriGorilla Anycubic version 1.4 Rev 1.1
else ifeq ($(HARDWARE_MOTHERBOARD),1136)
# Dagoma F5
# Creality: Ender-4, CR-8
else ifeq ($(HARDWARE_MOTHERBOARD),1137)
# FYSETC F6 1.3
# Creality: CR10S, CR20, CR-X
else ifeq ($(HARDWARE_MOTHERBOARD),1138)
# FYSETC F6 1.5
# Dagoma F5
else ifeq ($(HARDWARE_MOTHERBOARD),1139)
# Duplicator i3 Plus
# FYSETC F6 1.3
else ifeq ($(HARDWARE_MOTHERBOARD),1140)
# VORON
# FYSETC F6 1.5
else ifeq ($(HARDWARE_MOTHERBOARD),1141)
# TRONXY V3 1.0
# Duplicator i3 Plus
else ifeq ($(HARDWARE_MOTHERBOARD),1142)
# Z-Bolt X Series
# VORON
else ifeq ($(HARDWARE_MOTHERBOARD),1143)
# TT OSCAR
# TRONXY V3 1.0
else ifeq ($(HARDWARE_MOTHERBOARD),1144)
# Overlord/Overlord Pro
# Z-Bolt X Series
else ifeq ($(HARDWARE_MOTHERBOARD),1145)
# ADIMLab Gantry v1
# TT OSCAR
else ifeq ($(HARDWARE_MOTHERBOARD),1146)
# ADIMLab Gantry v2
# Overlord/Overlord Pro
else ifeq ($(HARDWARE_MOTHERBOARD),1147)
# BIQU Tango V1
# ADIMLab Gantry v1
else ifeq ($(HARDWARE_MOTHERBOARD),1148)
# MKS GEN L V2
# ADIMLab Gantry v2
else ifeq ($(HARDWARE_MOTHERBOARD),1149)
# Copymaster 3D
# BIQU Tango V1
else ifeq ($(HARDWARE_MOTHERBOARD),1150)
# MKS GEN L V2
else ifeq ($(HARDWARE_MOTHERBOARD),1151)
# MKS GEN L V2.1
else ifeq ($(HARDWARE_MOTHERBOARD),1152)
# Copymaster 3D
else ifeq ($(HARDWARE_MOTHERBOARD),1153)
# Ortur 4
else ifeq ($(HARDWARE_MOTHERBOARD),1154)
# Tenlog D3 Hero
else ifeq ($(HARDWARE_MOTHERBOARD),1155)
#
# RAMBo and derivatives
@ -341,9 +378,11 @@ else ifeq ($(HARDWARE_MOTHERBOARD),1320)
# Minitronics v1.0/1.1
else ifeq ($(HARDWARE_MOTHERBOARD),1400)
MCU ?= atmega1281
PROG_MCU ?= m1281
# Silvergate v1.0
else ifeq ($(HARDWARE_MOTHERBOARD),1401)
MCU ?= atmega1281
PROG_MCU ?= m1281
#
# Sanguinololu and Derivatives - ATmega644P, ATmega1284P
@ -353,42 +392,57 @@ else ifeq ($(HARDWARE_MOTHERBOARD),1401)
else ifeq ($(HARDWARE_MOTHERBOARD),1500)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
PROG_MCU ?= m644p
# Sanguinololu 1.2 and above
else ifeq ($(HARDWARE_MOTHERBOARD),1501)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
PROG_MCU ?= m644p
# Melzi
else ifeq ($(HARDWARE_MOTHERBOARD),1502)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
# Melzi with ATmega1284 (MaKr3d version)
PROG_MCU ?= m644p
# Melzi V2.0
else ifeq ($(HARDWARE_MOTHERBOARD),1503)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
# Melzi Creality3D board (for CR-10 etc)
PROG_MCU ?= m1284p
# Melzi with ATmega1284 (MaKr3d version)
else ifeq ($(HARDWARE_MOTHERBOARD),1504)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
# Melzi Malyan M150 board
PROG_MCU ?= m1284p
# Melzi Creality3D board (for CR-10 etc)
else ifeq ($(HARDWARE_MOTHERBOARD),1505)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
# Tronxy X5S
PROG_MCU ?= m1284p
# Melzi Malyan M150 board
else ifeq ($(HARDWARE_MOTHERBOARD),1506)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
# STB V1.1
PROG_MCU ?= m1284p
# Tronxy X5S
else ifeq ($(HARDWARE_MOTHERBOARD),1507)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
# Azteeg X1
PROG_MCU ?= m1284p
# STB V1.1
else ifeq ($(HARDWARE_MOTHERBOARD),1508)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
# Anet 1.0 (Melzi clone)
PROG_MCU ?= m1284p
# Azteeg X1
else ifeq ($(HARDWARE_MOTHERBOARD),1509)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
PROG_MCU ?= m1284p
# Anet 1.0 (Melzi clone)
else ifeq ($(HARDWARE_MOTHERBOARD),1510)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega1284p
PROG_MCU ?= m1284p
#
# Other ATmega644P, ATmega644, ATmega1284P
@ -398,50 +452,61 @@ else ifeq ($(HARDWARE_MOTHERBOARD),1509)
else ifeq ($(HARDWARE_MOTHERBOARD),1600)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
PROG_MCU ?= m644p
# Gen3+
else ifeq ($(HARDWARE_MOTHERBOARD),1601)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
PROG_MCU ?= m644p
# Gen6
else ifeq ($(HARDWARE_MOTHERBOARD),1602)
HARDWARE_VARIANT ?= Gen6
MCU ?= atmega644p
PROG_MCU ?= m644p
# Gen6 deluxe
else ifeq ($(HARDWARE_MOTHERBOARD),1603)
HARDWARE_VARIANT ?= Gen6
MCU ?= atmega644p
PROG_MCU ?= m644p
# Gen7 custom (Alfons3 Version)
else ifeq ($(HARDWARE_MOTHERBOARD),1604)
HARDWARE_VARIANT ?= Gen7
MCU ?= atmega644
PROG_MCU ?= m644
F_CPU ?= 20000000
# Gen7 v1.1, v1.2
else ifeq ($(HARDWARE_MOTHERBOARD),1605)
HARDWARE_VARIANT ?= Gen7
MCU ?= atmega644p
PROG_MCU ?= m644p
F_CPU ?= 20000000
# Gen7 v1.3
else ifeq ($(HARDWARE_MOTHERBOARD),1606)
HARDWARE_VARIANT ?= Gen7
MCU ?= atmega644p
PROG_MCU ?= m644p
F_CPU ?= 20000000
# Gen7 v1.4
else ifeq ($(HARDWARE_MOTHERBOARD),1607)
HARDWARE_VARIANT ?= Gen7
MCU ?= atmega1284p
PROG_MCU ?= m1284p
F_CPU ?= 20000000
# Alpha OMCA board
else ifeq ($(HARDWARE_MOTHERBOARD),1608)
HARDWARE_VARIANT ?= SanguinoA
MCU ?= atmega644
PROG_MCU ?= m644
# Final OMCA board
else ifeq ($(HARDWARE_MOTHERBOARD),1609)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
PROG_MCU ?= m644p
# Sethi 3D_1
else ifeq ($(HARDWARE_MOTHERBOARD),1610)
HARDWARE_VARIANT ?= Sanguino
MCU ?= atmega644p
PROG_MCU ?= m644p
#
# Teensyduino - AT90USB1286, AT90USB1286P
@ -451,51 +516,60 @@ else ifeq ($(HARDWARE_MOTHERBOARD),1610)
else ifeq ($(HARDWARE_MOTHERBOARD),1700)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# Printrboard (AT90USB1286)
else ifeq ($(HARDWARE_MOTHERBOARD),1701)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# Printrboard Revision F (AT90USB1286)
else ifeq ($(HARDWARE_MOTHERBOARD),1702)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# Brainwave (AT90USB646)
else ifeq ($(HARDWARE_MOTHERBOARD),1703)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb646
PROG_MCU ?= usb646
# Brainwave Pro (AT90USB1286)
else ifeq ($(HARDWARE_MOTHERBOARD),1704)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# SAV Mk-I (AT90USB1286)
else ifeq ($(HARDWARE_MOTHERBOARD),1705)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# Teensy++2.0 (AT90USB1286)
else ifeq ($(HARDWARE_MOTHERBOARD),1706)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# 5DPrint D8 Driver Board
else ifeq ($(HARDWARE_MOTHERBOARD),1707)
HARDWARE_VARIANT ?= Teensy
MCU ?= at90usb1286
PROG_MCU ?= usb1286
# UltiMachine Archim1 (with DRV8825 drivers)
else ifeq ($(HARDWARE_MOTHERBOARD),3023)
HARDWARE_VARIANT ?= archim
MCPU = cortex-m3
F_CPU = 84000000L
F_CPU = 84000000
IS_MCU = 0
# UltiMachine Archim2 (with TMC2130 drivers)
else ifeq ($(HARDWARE_MOTHERBOARD),3024)
HARDWARE_VARIANT ?= archim
MCPU = cortex-m3
F_CPU = 84000000L
F_CPU = 84000000
IS_MCU = 0
endif
# Be sure to regenerate speed_lookuptable.h with create_speed_lookuptable.py
# if you are setting this to something other than 16MHz
# Do not put the UL suffix, it's done later on.
# Set to 16Mhz if not yet set.
F_CPU ?= 16000000
@ -505,7 +579,8 @@ IS_MCU ?= 1
ifeq ($(IS_MCU),1)
# Set to arduino, ATmega2560 if not yet set.
HARDWARE_VARIANT ?= arduino
MCU ?= atmega2560
MCU ?= atmega2560
PROG_MCU ?= m2560
TOOL_PREFIX = avr
MCU_FLAGS = -mmcu=$(MCU)
@ -536,27 +611,36 @@ VPATH += $(BUILD_DIR)
VPATH += $(HARDWARE_SRC)
ifeq ($(HARDWARE_VARIANT), $(filter $(HARDWARE_VARIANT),arduino Teensy Sanguino))
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/marlin/avr/libraries/LiquidCrystal/src
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/marlin/avr/libraries/SPI
# Old libraries (avr-core 1.6.21 < / Arduino < 1.6.8)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI
# New libraries (avr-core >= 1.6.21 / Arduino >= 1.6.8)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI/src
endif
ifeq ($(IS_MCU),1)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/cores/arduino
# Old libraries (avr-core 1.6.21 < / Arduino < 1.6.8)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SoftwareSerial
# New libraries (avr-core >= 1.6.21 / Arduino >= 1.6.8)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI/src
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SoftwareSerial/src
endif
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidCrystal/src
ifeq ($(LIQUID_TWI2), 1)
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire/utility
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidTWI2
WIRE = 1
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidTWI2
endif
ifeq ($(WIRE), 1)
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire/utility
# Old libraries (avr-core 1.6.21 / Arduino < 1.6.8)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire/utility
# New libraries (avr-core >= 1.6.21 / Arduino >= 1.6.8)
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire/src
VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire/src/utility
endif
ifeq ($(NEOPIXEL), 1)
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Adafruit_NeoPixel
@ -628,13 +712,23 @@ ifeq ($(WIRE), 1)
LIB_CXXSRC += Wire.cpp
endif
ifeq ($(TONE), 1)
LIB_CXXSRC += Tone.cpp
endif
ifeq ($(U8GLIB), 1)
LIB_CXXSRC += U8glib.cpp
LIB_SRC += u8g_ll_api.c u8g_bitmap.c u8g_clip.c u8g_com_null.c u8g_delay.c u8g_page.c u8g_pb.c u8g_pb16h1.c u8g_rect.c u8g_state.c u8g_font.c u8g_font_6x13.c u8g_font_04b_03.c u8g_font_5x8.c
LIB_SRC += u8g_ll_api.c u8g_bitmap.c u8g_clip.c u8g_com_null.c u8g_delay.c \
u8g_page.c u8g_pb.c u8g_pb16h1.c u8g_rect.c u8g_state.c u8g_font.c \
u8g_font_6x13.c u8g_font_04b_03.c u8g_font_5x8.c
endif
ifeq ($(TMC), 1)
LIB_CXXSRC += TMCStepper.cpp COOLCONF.cpp DRV_STATUS.cpp IHOLD_IRUN.cpp CHOPCONF.cpp GCONF.cpp PWMCONF.cpp DRV_CONF.cpp DRVCONF.cpp DRVCTRL.cpp DRVSTATUS.cpp ENCMODE.cpp RAMP_STAT.cpp SGCSCONF.cpp SHORT_CONF.cpp SMARTEN.cpp SW_MODE.cpp SW_SPI.cpp TMC2130Stepper.cpp TMC2208Stepper.cpp TMC2209Stepper.cpp TMC2660Stepper.cpp TMC5130Stepper.cpp TMC5160Stepper.cpp
LIB_CXXSRC += TMCStepper.cpp COOLCONF.cpp DRV_STATUS.cpp IHOLD_IRUN.cpp \
CHOPCONF.cpp GCONF.cpp PWMCONF.cpp DRV_CONF.cpp DRVCONF.cpp DRVCTRL.cpp \
DRVSTATUS.cpp ENCMODE.cpp RAMP_STAT.cpp SGCSCONF.cpp SHORT_CONF.cpp \
SMARTEN.cpp SW_MODE.cpp SW_SPI.cpp TMC2130Stepper.cpp TMC2208Stepper.cpp \
TMC2209Stepper.cpp TMC2660Stepper.cpp TMC5130Stepper.cpp TMC5160Stepper.cpp
endif
ifeq ($(RELOC_WORKAROUND), 1)
@ -676,17 +770,23 @@ REMOVE = rm -f
MV = mv -f
# Place -D or -U options here
CDEFS = -DF_CPU=$(F_CPU) ${addprefix -D , $(DEFINES)} -DARDUINO=$(ARDUINO_VERSION)
CDEFS = -DF_CPU=$(F_CPU)UL ${addprefix -D , $(DEFINES)} -DARDUINO=$(ARDUINO_VERSION)
CXXDEFS = $(CDEFS)
ifeq ($(HARDWARE_VARIANT), Teensy)
CDEFS += -DUSB_SERIAL
CDEFS += -DUSB_SERIAL
LIB_SRC += usb.c pins_teensy.c
LIB_CXXSRC += usb_api.cpp
else ifeq ($(HARDWARE_VARIANT), archim)
CDEFS += -DARDUINO_SAM_ARCHIM -DARDUINO_ARCH_SAM -D__SAM3X8E__ -DUSB_VID=0x27b1 -DUSB_PID=0x0001 -DUSBCON '-DUSB_MANUFACTURER="UltiMachine"' '-DUSB_PRODUCT="Archim"'
LIB_CXXSRC += variant.cpp IPAddress.cpp Reset.cpp RingBuffer.cpp Stream.cpp UARTClass.cpp USARTClass.cpp abi.cpp new.cpp watchdog.cpp CDC.cpp PluggableUSB.cpp USBCore.cpp
CDEFS += -DARDUINO_SAM_ARCHIM -DARDUINO_ARCH_SAM -D__SAM3X8E__
CDEFS += -DUSB_VID=0x27B1 -DUSB_PID=0x0001 -DUSBCON
CDEFS += '-DUSB_MANUFACTURER="UltiMachine"' '-DUSB_PRODUCT_STRING="Archim"'
LIB_CXXSRC += variant.cpp IPAddress.cpp Reset.cpp RingBuffer.cpp Stream.cpp \
UARTClass.cpp USARTClass.cpp abi.cpp new.cpp watchdog.cpp CDC.cpp \
PluggableUSB.cpp USBCore.cpp
LIB_SRC += cortex_handlers.c iar_calls_sam3.c syscalls_sam3.c dtostrf.c itoa.c
ifeq ($(U8GLIB), 1)
@ -712,16 +812,20 @@ CTUNING = -fsigned-char -funsigned-bitfields -fno-exceptions \
ifneq ($(HARDWARE_MOTHERBOARD),)
CTUNING += -DMOTHERBOARD=${HARDWARE_MOTHERBOARD}
endif
#CEXTRA = -Wa,-adhlns=$(<:.c=.lst)
CXXEXTRA = -fno-use-cxa-atexit -fno-threadsafe-statics -fno-rtti
CFLAGS := $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CEXTRA) $(CTUNING) $(CSTANDARD)
CXXFLAGS := $(CDEFS) $(CINCS) -O$(OPT) $(CXXEXTRA) $(CTUNING) $(CXXSTANDARD)
ASFLAGS := $(CDEFS)
#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs
ifeq ($(HARDWARE_VARIANT), archim)
LD_PREFIX = -Wl,--gc-sections,-Map,Marlin.ino.map,--cref,--check-sections,--entry=Reset_Handler,--unresolved-symbols=report-all,--warn-common,--warn-section-align
LD_SUFFIX = $(LDLIBS)
LDFLAGS = -lm -T$(LDSCRIPT) -u _sbrk -u link -u _close -u _fstat -u _isatty -u _lseek -u _read -u _write -u _exit -u kill -u _getpid
LDFLAGS = -lm -T$(LDSCRIPT) -u _sbrk -u link -u _close -u _fstat -u _isatty
LDFLAGS += -u _lseek -u _read -u _write -u _exit -u kill -u _getpid
else
LD_PREFIX = -Wl,--gc-sections,--relax
LDFLAGS = -lm
@ -737,7 +841,7 @@ else
AVRDUDE_CONF = $(ARDUINO_INSTALL_DIR)/hardware/tools/avr/etc/avrdude.conf
endif
AVRDUDE_FLAGS = -D -C$(AVRDUDE_CONF) \
-p$(MCU) -P$(AVRDUDE_PORT) -c$(AVRDUDE_PROGRAMMER) \
-p$(PROG_MCU) -P$(AVRDUDE_PORT) -c$(AVRDUDE_PROGRAMMER) \
-b$(UPLOAD_RATE)
# Since Marlin 2.0, the source files may be distributed into several
@ -838,7 +942,7 @@ extcoff: $(TARGET).elf
.elf.eep:
-$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 -O $(FORMAT) $< $@
--change-section-lma .eeprom=0 -O $(FORMAT) $< $@
# Create extended listing file from ELF output file.
.elf.lss:
@ -852,7 +956,7 @@ extcoff: $(TARGET).elf
$(BUILD_DIR)/$(TARGET).elf: $(OBJ) Configuration.h
$(Pecho) " CXX $@"
$P $(CC) $(LD_PREFIX) $(ALL_CXXFLAGS) -o $@ -L. $(OBJ) $(LDFLAGS) $(LD_SUFFIX)
$P $(CXX) $(LD_PREFIX) $(ALL_CXXFLAGS) -o $@ -L. $(OBJ) $(LDFLAGS) $(LD_SUFFIX)
# Object files that were found in "src" will be stored in $(BUILD_DIR)
# in directories that mirror the structure of "src"

View File

@ -1,9 +1,8 @@
/*
================================================================================
/*==============================================================================
Marlin Firmware
(c) 2011-2019 MarlinFirmware
(c) 2011-2020 MarlinFirmware
Portions of Marlin are (c) by their respective authors.
All code complies with GPLv2 and/or GPLv3
@ -12,30 +11,33 @@
Greetings! Thank you for choosing Marlin 2 as your 3D printer firmware.
To configure Marlin you must edit Configuration.h and Configuration_adv.h
located in the root 'Marlin' folder. Check the config/examples folder to see if
there's a more suitable starting-point for your specific hardware.
located in the root 'Marlin' folder. Check our Configurations repository to
see if there's a more suitable starting-point for your specific hardware.
Before diving in, we recommend the following essential links:
Marlin Firmware Official Website
- http://marlinfw.org/
- https://marlinfw.org/
The official Marlin Firmware website contains the most up-to-date
documentation. Contributions are always welcome!
Configuration
- https://github.com/MarlinFirmware/Configurations
Example configurations for several printer models.
- https://www.youtube.com/watch?v=3gwWVFtdg-4
A good 20-minute overview of Marlin configuration by Tom Sanladerer.
(Applies to Marlin 1.0.x, so Jerk and Acceleration should be halved.)
Also... https://www.google.com/search?tbs=vid%3A1&q=configure+marlin
- http://marlinfw.org/docs/configuration/configuration.html
- https://marlinfw.org/docs/configuration/configuration.html
Marlin's configuration options are explained in more detail here.
Getting Help
- http://forums.reprap.org/list.php?415
- https://reprap.org/forum/list.php?415
The Marlin Discussion Forum is a great place to get help from other Marlin
users who may have experienced similar issues to your own.
@ -45,9 +47,11 @@ Getting Help
Contributing
- http://marlinfw.org/docs/development/contributing.html
- https://marlinfw.org/docs/development/contributing.html
If you'd like to contribute to Marlin, read this first!
- http://marlinfw.org/docs/development/coding_standards.html
- https://marlinfw.org/docs/development/coding_standards.html
Before submitting code get to know the Coding Standards.
*/
------------------------------------------------------------------------------*/

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -28,20 +28,20 @@
/**
* Marlin release version identifier
*/
//#define SHORT_BUILD_VERSION "2.0.5.3"
//#define SHORT_BUILD_VERSION "2.0.7.2"
/**
* Verbose version identifier which should contain a reference to the location
* from where the binary was downloaded or the source code was compiled.
*/
//#define DETAILED_BUILD_VERSION SHORT_BUILD_VERSION " (Github)"
//#define DETAILED_BUILD_VERSION SHORT_BUILD_VERSION
/**
* The STRING_DISTRIBUTION_DATE represents when the binary file was built,
* here we define this default string as the date where the latest release
* version was tagged.
*/
//#define STRING_DISTRIBUTION_DATE "2020-01-31"
//#define STRING_DISTRIBUTION_DATE "2020-07-09"
/**
* Defines a generic printer name to be output to the LCD after booting Marlin.
@ -65,12 +65,12 @@
* The WEBSITE_URL is the location where users can get more information such as
* documentation about a specific Marlin release.
*/
//#define WEBSITE_URL "http://marlinfw.org"
//#define WEBSITE_URL "https://marlinfw.org"
/**
* Set the vendor info the serial USB interface, if changable
* Currently only supported by DUE platform
*/
//#define USB_DEVICE_VENDOR_ID 0x0000
//#define USB_DEVICE_PRODUCT_ID 0x0000
//#define USB_DEVICE_MANUFACTURE_NAME WEBSITE_URL
//#define USB_DEVICE_VENDOR_ID 0x0000
//#define USB_DEVICE_PRODUCT_ID 0x0000
//#define USB_DEVICE_MANUFACTURE_NAME WEBSITE_URL

View File

@ -33,4 +33,4 @@ PlatformIO will find your libraries automatically, configure preprocessor's
include paths and build them.
More information about PlatformIO Library Dependency Finder
- http://docs.platformio.org/page/librarymanager/ldf.html
- https://docs.platformio.org/page/librarymanager/ldf.html

View File

@ -16,10 +16,9 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef __AVR__
#include "../../inc/MarlinConfig.h"

View File

@ -14,7 +14,8 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -24,7 +25,7 @@
#include "watchdog.h"
#include "math.h"
#ifdef USBCON
#ifdef IS_AT90USB
#include <HardwareSerial.h>
#else
#define HardwareSerial_h // Hack to prevent HardwareSerial.h header inclusion
@ -50,7 +51,11 @@
// Defines
// ------------------------
//#define analogInputToDigitalPin(IO) IO
// AVR PROGMEM extension for sprintf_P
#define S_FMT "%S"
// AVR PROGMEM extension for string define
#define PGMSTR(NAM,STR) const char NAM[] PROGMEM = STR
#ifndef CRITICAL_SECTION_START
#define CRITICAL_SECTION_START() unsigned char _sreg = SREG; cli()
@ -60,16 +65,10 @@
#define ENABLE_ISRS() sei()
#define DISABLE_ISRS() cli()
// On AVR this is in math.h?
//#define square(x) ((x)*(x))
// ------------------------
// Types
// ------------------------
typedef uint16_t hal_timer_t;
#define HAL_TIMER_TYPE_MAX 0xFFFF
typedef int8_t pin_t;
#define SHARED_SERVOS HAS_SERVOS
@ -82,44 +81,30 @@ typedef int8_t pin_t;
//extern uint8_t MCUSR;
// Serial ports
#ifdef USBCON
#if ENABLED(BLUETOOTH)
#define MYSERIAL0 bluetoothSerial
#else
#define MYSERIAL0 Serial
#endif
#define NUM_SERIAL 1
#ifdef IS_AT90USB
#define MYSERIAL0 TERN(BLUETOOTH, bluetoothSerial, Serial)
#else
#if !WITHIN(SERIAL_PORT, -1, 3)
#error "SERIAL_PORT must be from -1 to 3. Please update your configuration."
#endif
#define MYSERIAL0 customizedSerial1
#ifdef SERIAL_PORT_2
#if !WITHIN(SERIAL_PORT_2, -1, 3)
#error "SERIAL_PORT_2 must be from -1 to 3. Please update your configuration."
#elif SERIAL_PORT_2 == SERIAL_PORT
#error "SERIAL_PORT_2 must be different than SERIAL_PORT. Please update your configuration."
#endif
#define MYSERIAL1 customizedSerial2
#define NUM_SERIAL 2
#else
#define NUM_SERIAL 1
#endif
#endif
#ifdef DGUS_SERIAL_PORT
#if !WITHIN(DGUS_SERIAL_PORT, -1, 3)
#error "DGUS_SERIAL_PORT must be from -1 to 3. Please update your configuration."
#elif DGUS_SERIAL_PORT == SERIAL_PORT
#error "DGUS_SERIAL_PORT must be different than SERIAL_PORT. Please update your configuration."
#elif defined(SERIAL_PORT_2) && DGUS_SERIAL_PORT == SERIAL_PORT_2
#error "DGUS_SERIAL_PORT must be different than SERIAL_PORT_2. Please update your configuration."
#ifdef LCD_SERIAL_PORT
#if !WITHIN(LCD_SERIAL_PORT, -1, 3)
#error "LCD_SERIAL_PORT must be from -1 to 3. Please update your configuration."
#endif
#define LCD_SERIAL lcdSerial
#if HAS_DGUS_LCD
#define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.get_tx_buffer_free()
#endif
#define DGUS_SERIAL internalDgusSerial
#define DGUS_SERIAL_GET_TX_BUFFER_FREE DGUS_SERIAL.get_tx_buffer_free
#endif
// ------------------------
@ -135,6 +120,8 @@ void HAL_init();
inline void HAL_clear_reset_source() { MCUSR = 0; }
inline uint8_t HAL_get_reset_source() { return MCUSR; }
inline void HAL_reboot() {} // reboot the board or restart the bootloader
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-function"
extern "C" {
@ -142,220 +129,6 @@ extern "C" {
}
#pragma GCC diagnostic pop
// timers
#define HAL_TIMER_RATE ((F_CPU) / 8) // i.e., 2MHz or 2.5MHz
#define STEP_TIMER_NUM 1
#define TEMP_TIMER_NUM 0
#define PULSE_TIMER_NUM STEP_TIMER_NUM
#define TEMP_TIMER_FREQUENCY ((F_CPU) / 64.0 / 256.0)
#define STEPPER_TIMER_RATE HAL_TIMER_RATE
#define STEPPER_TIMER_PRESCALE 8
#define STEPPER_TIMER_TICKS_PER_US ((STEPPER_TIMER_RATE) / 1000000) // Cannot be of type double
#define PULSE_TIMER_RATE STEPPER_TIMER_RATE // frequency of pulse timer
#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
#define PULSE_TIMER_TICKS_PER_US STEPPER_TIMER_TICKS_PER_US
#define ENABLE_STEPPER_DRIVER_INTERRUPT() SBI(TIMSK1, OCIE1A)
#define DISABLE_STEPPER_DRIVER_INTERRUPT() CBI(TIMSK1, OCIE1A)
#define STEPPER_ISR_ENABLED() TEST(TIMSK1, OCIE1A)
#define ENABLE_TEMPERATURE_INTERRUPT() SBI(TIMSK0, OCIE0B)
#define DISABLE_TEMPERATURE_INTERRUPT() CBI(TIMSK0, OCIE0B)
#define TEMPERATURE_ISR_ENABLED() TEST(TIMSK0, OCIE0B)
FORCE_INLINE void HAL_timer_start(const uint8_t timer_num, const uint32_t) {
switch (timer_num) {
case STEP_TIMER_NUM:
// waveform generation = 0100 = CTC
SET_WGM(1, CTC_OCRnA);
// output mode = 00 (disconnected)
SET_COMA(1, NORMAL);
// Set the timer pre-scaler
// Generally we use a divider of 8, resulting in a 2MHz timer
// frequency on a 16MHz MCU. If you are going to change this, be
// sure to regenerate speed_lookuptable.h with
// create_speed_lookuptable.py
SET_CS(1, PRESCALER_8); // CS 2 = 1/8 prescaler
// Init Stepper ISR to 122 Hz for quick starting
// (F_CPU) / (STEPPER_TIMER_PRESCALE) / frequency
OCR1A = 0x4000;
TCNT1 = 0;
break;
case TEMP_TIMER_NUM:
// Use timer0 for temperature measurement
// Interleave temperature interrupt with millies interrupt
OCR0B = 128;
break;
}
}
#define TIMER_OCR_1 OCR1A
#define TIMER_COUNTER_1 TCNT1
#define TIMER_OCR_0 OCR0A
#define TIMER_COUNTER_0 TCNT0
#define _CAT(a,V...) a##V
#define HAL_timer_set_compare(timer, compare) (_CAT(TIMER_OCR_, timer) = compare)
#define HAL_timer_get_compare(timer) _CAT(TIMER_OCR_, timer)
#define HAL_timer_get_count(timer) _CAT(TIMER_COUNTER_, timer)
/**
* On AVR there is no hardware prioritization and preemption of
* interrupts, so this emulates it. The UART has first priority
* (otherwise, characters will be lost due to UART overflow).
* Then: Stepper, Endstops, Temperature, and -finally- all others.
*/
#define HAL_timer_isr_prologue(TIMER_NUM)
#define HAL_timer_isr_epilogue(TIMER_NUM)
/* 18 cycles maximum latency */
#define HAL_STEP_TIMER_ISR() \
extern "C" void TIMER1_COMPA_vect() __attribute__ ((signal, naked, used, externally_visible)); \
extern "C" void TIMER1_COMPA_vect_bottom() asm ("TIMER1_COMPA_vect_bottom") __attribute__ ((used, externally_visible, noinline)); \
void TIMER1_COMPA_vect() { \
__asm__ __volatile__ ( \
A("push r16") /* 2 Save R16 */ \
A("in r16, __SREG__") /* 1 Get SREG */ \
A("push r16") /* 2 Save SREG into stack */ \
A("lds r16, %[timsk0]") /* 2 Load into R0 the Temperature timer Interrupt mask register */ \
A("push r16") /* 2 Save TIMSK0 into the stack */ \
A("andi r16,~%[msk0]") /* 1 Disable the temperature ISR */ \
A("sts %[timsk0], r16") /* 2 And set the new value */ \
A("lds r16, %[timsk1]") /* 2 Load into R0 the stepper timer Interrupt mask register [TIMSK1] */ \
A("andi r16,~%[msk1]") /* 1 Disable the stepper ISR */ \
A("sts %[timsk1], r16") /* 2 And set the new value */ \
A("push r16") /* 2 Save TIMSK1 into stack */ \
A("in r16, 0x3B") /* 1 Get RAMPZ register */ \
A("push r16") /* 2 Save RAMPZ into stack */ \
A("in r16, 0x3C") /* 1 Get EIND register */ \
A("push r0") /* C runtime can modify all the following registers without restoring them */ \
A("push r1") \
A("push r18") \
A("push r19") \
A("push r20") \
A("push r21") \
A("push r22") \
A("push r23") \
A("push r24") \
A("push r25") \
A("push r26") \
A("push r27") \
A("push r30") \
A("push r31") \
A("clr r1") /* C runtime expects this register to be 0 */ \
A("call TIMER1_COMPA_vect_bottom") /* Call the bottom handler - No inlining allowed, otherwise registers used are not saved */ \
A("pop r31") \
A("pop r30") \
A("pop r27") \
A("pop r26") \
A("pop r25") \
A("pop r24") \
A("pop r23") \
A("pop r22") \
A("pop r21") \
A("pop r20") \
A("pop r19") \
A("pop r18") \
A("pop r1") \
A("pop r0") \
A("out 0x3C, r16") /* 1 Restore EIND register */ \
A("pop r16") /* 2 Get the original RAMPZ register value */ \
A("out 0x3B, r16") /* 1 Restore RAMPZ register to its original value */ \
A("pop r16") /* 2 Get the original TIMSK1 value but with stepper ISR disabled */ \
A("ori r16,%[msk1]") /* 1 Reenable the stepper ISR */ \
A("cli") /* 1 Disable global interrupts - Reenabling Stepper ISR can reenter amd temperature can reenter, and we want that, if it happens, after this ISR has ended */ \
A("sts %[timsk1], r16") /* 2 And restore the old value - This reenables the stepper ISR */ \
A("pop r16") /* 2 Get the temperature timer Interrupt mask register [TIMSK0] */ \
A("sts %[timsk0], r16") /* 2 And restore the old value - This reenables the temperature ISR */ \
A("pop r16") /* 2 Get the old SREG value */ \
A("out __SREG__, r16") /* 1 And restore the SREG value */ \
A("pop r16") /* 2 Restore R16 value */ \
A("reti") /* 4 Return from interrupt */ \
: \
: [timsk0] "i" ((uint16_t)&TIMSK0), \
[timsk1] "i" ((uint16_t)&TIMSK1), \
[msk0] "M" ((uint8_t)(1<<OCIE0B)),\
[msk1] "M" ((uint8_t)(1<<OCIE1A)) \
: \
); \
} \
void TIMER1_COMPA_vect_bottom()
/* 14 cycles maximum latency */
#define HAL_TEMP_TIMER_ISR() \
extern "C" void TIMER0_COMPB_vect() __attribute__ ((signal, naked, used, externally_visible)); \
extern "C" void TIMER0_COMPB_vect_bottom() asm ("TIMER0_COMPB_vect_bottom") __attribute__ ((used, externally_visible, noinline)); \
void TIMER0_COMPB_vect() { \
__asm__ __volatile__ ( \
A("push r16") /* 2 Save R16 */ \
A("in r16, __SREG__") /* 1 Get SREG */ \
A("push r16") /* 2 Save SREG into stack */ \
A("lds r16, %[timsk0]") /* 2 Load into R0 the Temperature timer Interrupt mask register */ \
A("andi r16,~%[msk0]") /* 1 Disable the temperature ISR */ \
A("sts %[timsk0], r16") /* 2 And set the new value */ \
A("sei") /* 1 Enable global interrupts - It is safe, as the temperature ISR is disabled, so we cannot reenter it */ \
A("push r16") /* 2 Save TIMSK0 into stack */ \
A("in r16, 0x3B") /* 1 Get RAMPZ register */ \
A("push r16") /* 2 Save RAMPZ into stack */ \
A("in r16, 0x3C") /* 1 Get EIND register */ \
A("push r0") /* C runtime can modify all the following registers without restoring them */ \
A("push r1") \
A("push r18") \
A("push r19") \
A("push r20") \
A("push r21") \
A("push r22") \
A("push r23") \
A("push r24") \
A("push r25") \
A("push r26") \
A("push r27") \
A("push r30") \
A("push r31") \
A("clr r1") /* C runtime expects this register to be 0 */ \
A("call TIMER0_COMPB_vect_bottom") /* Call the bottom handler - No inlining allowed, otherwise registers used are not saved */ \
A("pop r31") \
A("pop r30") \
A("pop r27") \
A("pop r26") \
A("pop r25") \
A("pop r24") \
A("pop r23") \
A("pop r22") \
A("pop r21") \
A("pop r20") \
A("pop r19") \
A("pop r18") \
A("pop r1") \
A("pop r0") \
A("out 0x3C, r16") /* 1 Restore EIND register */ \
A("pop r16") /* 2 Get the original RAMPZ register value */ \
A("out 0x3B, r16") /* 1 Restore RAMPZ register to its original value */ \
A("pop r16") /* 2 Get the original TIMSK0 value but with temperature ISR disabled */ \
A("ori r16,%[msk0]") /* 1 Enable temperature ISR */ \
A("cli") /* 1 Disable global interrupts - We must do this, as we will reenable the temperature ISR, and we don't want to reenter this handler until the current one is done */ \
A("sts %[timsk0], r16") /* 2 And restore the old value */ \
A("pop r16") /* 2 Get the old SREG */ \
A("out __SREG__, r16") /* 1 And restore the SREG value */ \
A("pop r16") /* 2 Restore R16 */ \
A("reti") /* 4 Return from interrupt */ \
: \
: [timsk0] "i"((uint16_t)&TIMSK0), \
[msk0] "M" ((uint8_t)(1<<OCIE0B)) \
: \
); \
} \
void TIMER0_COMPB_vect_bottom()
// ADC
#ifdef DIDR2
#define HAL_ANALOG_SELECT(ind) do{ if (ind < 8) SBI(DIDR0, ind); else SBI(DIDR2, ind & 0x07); }while(0)
@ -378,6 +151,7 @@ inline void HAL_adc_init() {
#define HAL_START_ADC(ch) ADCSRB = 0; SET_ADMUX_ADCSRA(ch)
#endif
#define HAL_ADC_VREF 5.0
#define HAL_ADC_RESOLUTION 10
#define HAL_READ_ADC() ADC
#define HAL_ADC_READY() !TEST(ADCSRA, ADSC)
@ -395,6 +169,8 @@ inline void HAL_adc_init() {
// AVR compatibility
#define strtof strtod
#define HAL_CAN_SET_PWM_FREQ // This HAL supports PWM Frequency adjustment
/**
* set_pwm_frequency
* Sets the frequency of the timer corresponding to the provided pin

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/

File diff suppressed because it is too large Load Diff

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -48,11 +48,11 @@
// These are macros to build serial port register names for the selected SERIAL_PORT (C preprocessor
// requires two levels of indirection to expand macro values properly)
#define SERIAL_REGNAME(registerbase,number,suffix) SERIAL_REGNAME_INTERNAL(registerbase,number,suffix)
#define SERIAL_REGNAME(registerbase,number,suffix) _SERIAL_REGNAME(registerbase,number,suffix)
#if SERIAL_PORT == 0 && (!defined(UBRR0H) || !defined(UDR0)) // use un-numbered registers if necessary
#define SERIAL_REGNAME_INTERNAL(registerbase,number,suffix) registerbase##suffix
#define _SERIAL_REGNAME(registerbase,number,suffix) registerbase##suffix
#else
#define SERIAL_REGNAME_INTERNAL(registerbase,number,suffix) registerbase##number##suffix
#define _SERIAL_REGNAME(registerbase,number,suffix) registerbase##number##suffix
#endif
// Registers used by MarlinSerial class (expanded depending on selected serial port)
@ -217,10 +217,12 @@
static ring_buffer_pos_t available();
static void write(const uint8_t c);
static void flushTX();
#ifdef DGUS_SERIAL_PORT
#if HAS_DGUS_LCD
static ring_buffer_pos_t get_tx_buffer_free();
#endif
static inline bool emergency_parser_enabled() { return Cfg::EMERGENCYPARSER; }
FORCE_INLINE static uint8_t dropped() { return Cfg::DROPPED_RX ? rx_dropped_bytes : 0; }
FORCE_INLINE static uint8_t buffer_overruns() { return Cfg::RX_OVERRUNS ? rx_buffer_overruns : 0; }
FORCE_INLINE static uint8_t framing_errors() { return Cfg::RX_FRAMING_ERRORS ? rx_framing_errors : 0; }
@ -278,41 +280,53 @@
#endif // !USBCON
#ifdef INTERNAL_SERIAL_PORT
#ifdef MMU2_SERIAL_PORT
template <uint8_t serial>
struct MarlinInternalSerialCfg {
struct MMU2SerialCfg {
static constexpr int PORT = serial;
static constexpr bool XONOFF = false;
static constexpr bool EMERGENCYPARSER = false;
static constexpr bool DROPPED_RX = false;
static constexpr bool RX_FRAMING_ERRORS = false;
static constexpr bool MAX_RX_QUEUED = false;
static constexpr unsigned int RX_SIZE = 32;
static constexpr unsigned int TX_SIZE = 32;
static constexpr bool XONOFF = false;
static constexpr bool EMERGENCYPARSER = false;
static constexpr bool DROPPED_RX = false;
static constexpr bool RX_OVERRUNS = false;
static constexpr bool RX_FRAMING_ERRORS = false;
static constexpr bool MAX_RX_QUEUED = false;
};
extern MarlinSerial<MarlinInternalSerialCfg<INTERNAL_SERIAL_PORT>> internalSerial;
extern MarlinSerial<MMU2SerialCfg<MMU2_SERIAL_PORT>> mmuSerial;
#endif
#ifdef DGUS_SERIAL_PORT
#ifdef LCD_SERIAL_PORT
template <uint8_t serial>
struct MarlinInternalSerialCfg {
static constexpr int PORT = serial;
static constexpr unsigned int RX_SIZE = 128;
static constexpr unsigned int TX_SIZE = 48;
static constexpr bool XONOFF = false;
static constexpr bool EMERGENCYPARSER = false;
static constexpr bool DROPPED_RX = false;
static constexpr bool RX_OVERRUNS = HAS_DGUS_LCD && ENABLED(DGUS_SERIAL_STATS_RX_BUFFER_OVERRUNS);
static constexpr bool RX_FRAMING_ERRORS = false;
static constexpr bool MAX_RX_QUEUED = false;
struct LCDSerialCfg {
static constexpr int PORT = serial;
static constexpr bool XONOFF = false;
static constexpr bool EMERGENCYPARSER = ENABLED(EMERGENCY_PARSER);
static constexpr bool DROPPED_RX = false;
static constexpr bool RX_FRAMING_ERRORS = false;
static constexpr bool MAX_RX_QUEUED = false;
#if HAS_DGUS_LCD
static constexpr unsigned int RX_SIZE = DGUS_RX_BUFFER_SIZE;
static constexpr unsigned int TX_SIZE = DGUS_TX_BUFFER_SIZE;
static constexpr bool RX_OVERRUNS = ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS);
#elif EITHER(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON)
static constexpr unsigned int RX_SIZE = 64;
static constexpr unsigned int TX_SIZE = 128;
static constexpr bool RX_OVERRUNS = false;
#else
static constexpr unsigned int RX_SIZE = 64;
static constexpr unsigned int TX_SIZE = 128;
static constexpr bool RX_OVERRUNS = false
#endif
};
extern MarlinSerial<MarlinInternalSerialCfg<DGUS_SERIAL_PORT>> internalDgusSerial;
extern MarlinSerial<LCDSerialCfg<LCD_SERIAL_PORT>> lcdSerial;
#endif
// Use the UART for Bluetooth in AT90USB configurations
#if defined(USBCON) && ENABLED(BLUETOOTH)
#if BOTH(IS_AT90USB, BLUETOOTH)
extern HardwareSerial bluetoothSerial;
#endif

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -48,7 +48,6 @@
* readMicroseconds() - Get the last-written servo pulse width in microseconds.
* attached() - Return true if a servo is attached.
* detach() - Stop an attached servo from pulsing its i/o pin.
*
*/
#ifdef __AVR__
@ -59,7 +58,6 @@
#include <avr/interrupt.h>
#include "../shared/Marduino.h"
#include "../shared/servo.h"
#include "../shared/servo_private.h"

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -59,10 +59,12 @@
// Say which 16 bit timers can be used and in what order
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
//#define _useTimer1
#define _useTimer3
#define _useTimer4
#if !HAS_MOTOR_CURRENT_PWM
#define _useTimer5 // Timer 5 is used for motor current PWM and can't be used for servos.
#if NUM_SERVOS > SERVOS_PER_TIMER
#define _useTimer3
#if !HAS_MOTOR_CURRENT_PWM && SERVOS > 2 * SERVOS_PER_TIMER
#define _useTimer5 // Timer 5 is used for motor current PWM and can't be used for servos.
#endif
#endif
#elif defined(__AVR_ATmega32U4__)
#define _useTimer3

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef __AVR__
@ -25,9 +25,18 @@
#if EITHER(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE)
/**
* PersistentStore for Arduino-style EEPROM interface
* with implementations supplied by the framework.
*/
#include "../shared/eeprom_api.h"
bool PersistentStore::access_start() { return true; }
#ifndef MARLIN_EEPROM_SIZE
#define MARLIN_EEPROM_SIZE size_t(E2END + 1)
#endif
size_t PersistentStore::capacity() { return MARLIN_EEPROM_SIZE; }
bool PersistentStore::access_start() { return true; }
bool PersistentStore::access_finish() { return true; }
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
@ -46,7 +55,7 @@ bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, ui
crc16(crc, &v, 1);
pos++;
value++;
};
}
return false;
}
@ -61,7 +70,5 @@ bool PersistentStore::read_data(int &pos, uint8_t* value, size_t size, uint16_t
return false; // always assume success for AVR's
}
size_t PersistentStore::capacity() { return E2END + 1; }
#endif // EEPROM_SETTINGS || SD_FIRMWARE_UPDATE
#endif // __AVR__

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,14 +16,14 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef __AVR__
#include "../../inc/MarlinConfigPre.h"
#if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_PWM
#if NEEDS_HARDWARE_PWM // Specific meta-flag for features that mandate PWM
#include "HAL.h"
@ -185,8 +185,8 @@ void set_pwm_frequency(const pin_t pin, int f_desired) {
res_temp_phase_correct = rtf / 2;
}
LIMIT(res_temp_fast, 1u, size);
LIMIT(res_temp_phase_correct, 1u, size);
LIMIT(res_temp_fast, 1U, size);
LIMIT(res_temp_phase_correct, 1U, size);
// Calculate frequencies of test prescaler and resolution values
const int f_temp_fast = (F_CPU) / (prescaler[i] * (1 + res_temp_fast)),
f_temp_phase_correct = (F_CPU) / (2 * prescaler[i] * res_temp_phase_correct),
@ -274,9 +274,9 @@ void set_pwm_duty(const pin_t pin, const uint16_t v, const uint16_t v_size/*=255
else
top = *timer.ICRn; // top = ICRn
_SET_OCRnQ(timer.OCRnQ, timer.q, v * float(top / v_size)); // Scale 8/16-bit v to top value
_SET_OCRnQ(timer.OCRnQ, timer.q, v * float(top) / float(v_size)); // Scale 8/16-bit v to top value
}
}
#endif // FAST_PWM_FAN || SPINDLE_LASER_PWM
#endif // NEEDS_HARDWARE_PWM
#endif // __AVR__

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -234,5 +234,55 @@ uint8_t extDigitalRead(const int8_t pin) {
}
}
#if 0
/**
* Set Timer 5 PWM frequency in Hz, from 3.8Hz up to ~16MHz
* with a minimum resolution of 100 steps.
*
* DC values -1.0 to 1.0. Negative duty cycle inverts the pulse.
*/
uint16_t set_pwm_frequency_hz(const float &hz, const float dca, const float dcb, const float dcc) {
float count = 0;
if (hz > 0 && (dca || dcb || dcc)) {
count = float(F_CPU) / hz; // 1x prescaler, TOP for 16MHz base freq.
uint16_t prescaler; // Range of 30.5Hz (65535) 64.5KHz (>31)
if (count >= 255. * 256.) { prescaler = 1024; SET_CS(5, PRESCALER_1024); }
else if (count >= 255. * 64.) { prescaler = 256; SET_CS(5, PRESCALER_256); }
else if (count >= 255. * 8.) { prescaler = 64; SET_CS(5, PRESCALER_64); }
else if (count >= 255.) { prescaler = 8; SET_CS(5, PRESCALER_8); }
else { prescaler = 1; SET_CS(5, PRESCALER_1); }
count /= float(prescaler);
const float pwm_top = round(count); // Get the rounded count
ICR5 = (uint16_t)pwm_top - 1; // Subtract 1 for TOP
OCR5A = pwm_top * ABS(dca); // Update and scale DCs
OCR5B = pwm_top * ABS(dcb);
OCR5C = pwm_top * ABS(dcc);
_SET_COM(5, A, dca ? (dca < 0 ? COM_SET_CLEAR : COM_CLEAR_SET) : COM_NORMAL); // Set compare modes
_SET_COM(5, B, dcb ? (dcb < 0 ? COM_SET_CLEAR : COM_CLEAR_SET) : COM_NORMAL);
_SET_COM(5, C, dcc ? (dcc < 0 ? COM_SET_CLEAR : COM_CLEAR_SET) : COM_NORMAL);
SET_WGM(5, FAST_PWM_ICRn); // Fast PWM with ICR5 as TOP
//SERIAL_ECHOLNPGM("Timer 5 Settings:");
//SERIAL_ECHOLNPAIR(" Prescaler=", prescaler);
//SERIAL_ECHOLNPAIR(" TOP=", ICR5);
//SERIAL_ECHOLNPAIR(" OCR5A=", OCR5A);
//SERIAL_ECHOLNPAIR(" OCR5B=", OCR5B);
//SERIAL_ECHOLNPAIR(" OCR5C=", OCR5C);
}
else {
// Restore the default for Timer 5
SET_WGM(5, PWM_PC_8); // PWM 8-bit (Phase Correct)
SET_COMS(5, NORMAL, NORMAL, NORMAL); // Do nothing
SET_CS(5, PRESCALER_64); // 16MHz / 64 = 250KHz
OCR5A = OCR5B = OCR5C = 0;
}
return round(count);
}
#endif
#endif // FASTIO_EXT_START
#endif // __AVR__

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -29,11 +29,17 @@
#include <avr/io.h>
#define AVR_AT90USB1286_FAMILY (defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1286P__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB646P__) || defined(__AVR_AT90USB647__))
#define AVR_ATmega1284_FAMILY (defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644PA__) || defined(__AVR_ATmega1284P__))
#define AVR_ATmega2560_FAMILY (defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__))
#define AVR_ATmega2561_FAMILY (defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__))
#define AVR_ATmega328_FAMILY (defined(__AVR_ATmega168__) || defined(__AVR_ATmega328__) || defined(__AVR_ATmega328P__))
#if defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1286P__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB646P__) || defined(__AVR_AT90USB647__)
#define AVR_AT90USB1286_FAMILY 1
#elif defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644PA__) || defined(__AVR_ATmega1284P__)
#define AVR_ATmega1284_FAMILY 1
#elif defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
#define AVR_ATmega2560_FAMILY 1
#elif defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__)
#define AVR_ATmega2561_FAMILY 1
#elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328__) || defined(__AVR_ATmega328P__)
#define AVR_ATmega328_FAMILY 1
#endif
/**
* Include Ports and Functions
@ -57,7 +63,7 @@
*
* Now you can simply SET_OUTPUT(PIN); WRITE(PIN, HIGH); WRITE(PIN, LOW);
*
* Why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html
* Why double up on these macros? see https://gcc.gnu.org/onlinedocs/cpp/Stringification.html
*/
#define _READ(IO) TEST(DIO ## IO ## _RPORT, DIO ## IO ## _PIN)

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,11 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
#if HAS_SPI_TFT || HAS_FSMC_TFT
#error "Sorry! TFT displays are not available for HAL/AVR."
#endif

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -25,16 +25,6 @@
* Test AVR-specific configuration values for errors at compile-time.
*/
/**
* Digipot requirement
*/
#if ENABLED(DIGIPOT_MCP4018)
#if !defined(DIGIPOTS_I2C_SDA_X) || !defined(DIGIPOTS_I2C_SDA_Y) || !defined(DIGIPOTS_I2C_SDA_Z) \
|| !defined(DIGIPOTS_I2C_SDA_E0) || !defined(DIGIPOTS_I2C_SDA_E1)
#error "DIGIPOT_MCP4018 requires DIGIPOTS_I2C_SDA_* pins to be defined."
#endif
#endif
/**
* Checks for FAST PWM
*/
@ -46,20 +36,23 @@
* Sanity checks for Spindle / Laser PWM
*/
#if ENABLED(SPINDLE_LASER_PWM)
#include "../ServoTimers.h" // Needed to check timer availability (_useTimer3)
#if SPINDLE_LASER_PWM_PIN == 4 || WITHIN(SPINDLE_LASER_PWM_PIN, 11, 13)
#error "Counter/Timer for SPINDLE_LASER_PWM_PIN is used by a system interrupt."
#elif NUM_SERVOS > 0 && (WITHIN(SPINDLE_LASER_PWM_PIN, 2, 3) || SPINDLE_LASER_PWM_PIN == 5)
#elif NUM_SERVOS > 0 && defined(_useTimer3) && (WITHIN(SPINDLE_LASER_PWM_PIN, 2, 3) || SPINDLE_LASER_PWM_PIN == 5)
#error "Counter/Timer for SPINDLE_LASER_PWM_PIN is used by the servo system."
#endif
#elif defined(SPINDLE_LASER_FREQUENCY)
#error "SPINDLE_LASER_FREQUENCY requires SPINDLE_LASER_PWM."
#endif
/**
* The Trinamic library includes SoftwareSerial.h, leading to a compile error.
*/
#if HAS_TRINAMIC_CONFIG && ENABLED(ENDSTOP_INTERRUPTS_FEATURE)
#if BOTH(HAS_TRINAMIC_CONFIG, ENDSTOP_INTERRUPTS_FEATURE)
#error "TMCStepper includes SoftwareSerial.h which is incompatible with ENDSTOP_INTERRUPTS_FEATURE. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."
#endif
#if HAS_TMC_SW_SERIAL && ENABLED(MONITOR_DRIVER_STATUS)
#if BOTH(HAS_TMC_SW_SERIAL, MONITOR_DRIVER_STATUS)
#error "MONITOR_DRIVER_STATUS causes performance issues when used with SoftwareSerial-connected drivers. Disable MONITOR_DRIVER_STATUS or use hardware serial to continue."
#endif

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -13,7 +13,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -26,7 +26,9 @@
#define NUMBER_PINS_TOTAL NUM_DIGITAL_PINS
#define AVR_ATmega2560_FAMILY_PLUS_70 MB(BQ_ZUM_MEGA_3D, MIGHTYBOARD_REVE, MINIRAMBO, SCOOVO_X9H)
#if MB(BQ_ZUM_MEGA_3D, MIGHTYBOARD_REVE, MINIRAMBO, SCOOVO_X9H, TRIGORILLA_14)
#define AVR_ATmega2560_FAMILY_PLUS_70 1
#endif
#if AVR_AT90USB1286_FAMILY

View File

@ -13,7 +13,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -13,7 +13,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -22,15 +22,12 @@
* Structures for 2560 family boards that use more than 70 pins
*/
#undef NUM_DIGITAL_PINS
#if MB(BQ_ZUM_MEGA_3D)
#if MB(BQ_ZUM_MEGA_3D, MINIRAMBO, SCOOVO_X9H, TRIGORILLA_14)
#undef NUM_DIGITAL_PINS
#define NUM_DIGITAL_PINS 85
#elif MB(MIGHTYBOARD_REVE)
#undef NUM_DIGITAL_PINS
#define NUM_DIGITAL_PINS 80
#elif MB(MINIRAMBO)
#define NUM_DIGITAL_PINS 85
#elif MB(SCOOVO_X9H)
#define NUM_DIGITAL_PINS 85
#endif
#define PA 1

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

260
Marlin/src/HAL/AVR/timers.h Normal file
View File

@ -0,0 +1,260 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
* Copyright (c) 2016 Bob Cousins bobcousins42@googlemail.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
#include <stdint.h>
// ------------------------
// Types
// ------------------------
typedef uint16_t hal_timer_t;
#define HAL_TIMER_TYPE_MAX 0xFFFF
// ------------------------
// Defines
// ------------------------
#define HAL_TIMER_RATE ((F_CPU) / 8) // i.e., 2MHz or 2.5MHz
#ifndef STEP_TIMER_NUM
#define STEP_TIMER_NUM 1
#endif
#ifndef PULSE_TIMER_NUM
#define PULSE_TIMER_NUM STEP_TIMER_NUM
#endif
#ifndef TEMP_TIMER_NUM
#define TEMP_TIMER_NUM 0
#endif
#define TEMP_TIMER_FREQUENCY ((F_CPU) / 64.0 / 256.0)
#define STEPPER_TIMER_RATE HAL_TIMER_RATE
#define STEPPER_TIMER_PRESCALE 8
#define STEPPER_TIMER_TICKS_PER_US ((STEPPER_TIMER_RATE) / 1000000) // Cannot be of type double
#define PULSE_TIMER_RATE STEPPER_TIMER_RATE // frequency of pulse timer
#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE
#define PULSE_TIMER_TICKS_PER_US STEPPER_TIMER_TICKS_PER_US
#define ENABLE_STEPPER_DRIVER_INTERRUPT() SBI(TIMSK1, OCIE1A)
#define DISABLE_STEPPER_DRIVER_INTERRUPT() CBI(TIMSK1, OCIE1A)
#define STEPPER_ISR_ENABLED() TEST(TIMSK1, OCIE1A)
#define ENABLE_TEMPERATURE_INTERRUPT() SBI(TIMSK0, OCIE0B)
#define DISABLE_TEMPERATURE_INTERRUPT() CBI(TIMSK0, OCIE0B)
#define TEMPERATURE_ISR_ENABLED() TEST(TIMSK0, OCIE0B)
FORCE_INLINE void HAL_timer_start(const uint8_t timer_num, const uint32_t) {
switch (timer_num) {
case STEP_TIMER_NUM:
// waveform generation = 0100 = CTC
SET_WGM(1, CTC_OCRnA);
// output mode = 00 (disconnected)
SET_COMA(1, NORMAL);
// Set the timer pre-scaler
// Generally we use a divider of 8, resulting in a 2MHz timer
// frequency on a 16MHz MCU. If you are going to change this, be
// sure to regenerate speed_lookuptable.h with
// create_speed_lookuptable.py
SET_CS(1, PRESCALER_8); // CS 2 = 1/8 prescaler
// Init Stepper ISR to 122 Hz for quick starting
// (F_CPU) / (STEPPER_TIMER_PRESCALE) / frequency
OCR1A = 0x4000;
TCNT1 = 0;
break;
case TEMP_TIMER_NUM:
// Use timer0 for temperature measurement
// Interleave temperature interrupt with millies interrupt
OCR0B = 128;
break;
}
}
#define TIMER_OCR_1 OCR1A
#define TIMER_COUNTER_1 TCNT1
#define TIMER_OCR_0 OCR0A
#define TIMER_COUNTER_0 TCNT0
#define _CAT(a,V...) a##V
#define HAL_timer_set_compare(timer, compare) (_CAT(TIMER_OCR_, timer) = compare)
#define HAL_timer_get_compare(timer) _CAT(TIMER_OCR_, timer)
#define HAL_timer_get_count(timer) _CAT(TIMER_COUNTER_, timer)
/**
* On AVR there is no hardware prioritization and preemption of
* interrupts, so this emulates it. The UART has first priority
* (otherwise, characters will be lost due to UART overflow).
* Then: Stepper, Endstops, Temperature, and -finally- all others.
*/
#define HAL_timer_isr_prologue(TIMER_NUM)
#define HAL_timer_isr_epilogue(TIMER_NUM)
/* 18 cycles maximum latency */
#ifndef HAL_STEP_TIMER_ISR
#define HAL_STEP_TIMER_ISR() \
extern "C" void TIMER1_COMPA_vect() __attribute__ ((signal, naked, used, externally_visible)); \
extern "C" void TIMER1_COMPA_vect_bottom() asm ("TIMER1_COMPA_vect_bottom") __attribute__ ((used, externally_visible, noinline)); \
void TIMER1_COMPA_vect() { \
__asm__ __volatile__ ( \
A("push r16") /* 2 Save R16 */ \
A("in r16, __SREG__") /* 1 Get SREG */ \
A("push r16") /* 2 Save SREG into stack */ \
A("lds r16, %[timsk0]") /* 2 Load into R0 the Temperature timer Interrupt mask register */ \
A("push r16") /* 2 Save TIMSK0 into the stack */ \
A("andi r16,~%[msk0]") /* 1 Disable the temperature ISR */ \
A("sts %[timsk0], r16") /* 2 And set the new value */ \
A("lds r16, %[timsk1]") /* 2 Load into R0 the stepper timer Interrupt mask register [TIMSK1] */ \
A("andi r16,~%[msk1]") /* 1 Disable the stepper ISR */ \
A("sts %[timsk1], r16") /* 2 And set the new value */ \
A("push r16") /* 2 Save TIMSK1 into stack */ \
A("in r16, 0x3B") /* 1 Get RAMPZ register */ \
A("push r16") /* 2 Save RAMPZ into stack */ \
A("in r16, 0x3C") /* 1 Get EIND register */ \
A("push r0") /* C runtime can modify all the following registers without restoring them */ \
A("push r1") \
A("push r18") \
A("push r19") \
A("push r20") \
A("push r21") \
A("push r22") \
A("push r23") \
A("push r24") \
A("push r25") \
A("push r26") \
A("push r27") \
A("push r30") \
A("push r31") \
A("clr r1") /* C runtime expects this register to be 0 */ \
A("call TIMER1_COMPA_vect_bottom") /* Call the bottom handler - No inlining allowed, otherwise registers used are not saved */ \
A("pop r31") \
A("pop r30") \
A("pop r27") \
A("pop r26") \
A("pop r25") \
A("pop r24") \
A("pop r23") \
A("pop r22") \
A("pop r21") \
A("pop r20") \
A("pop r19") \
A("pop r18") \
A("pop r1") \
A("pop r0") \
A("out 0x3C, r16") /* 1 Restore EIND register */ \
A("pop r16") /* 2 Get the original RAMPZ register value */ \
A("out 0x3B, r16") /* 1 Restore RAMPZ register to its original value */ \
A("pop r16") /* 2 Get the original TIMSK1 value but with stepper ISR disabled */ \
A("ori r16,%[msk1]") /* 1 Reenable the stepper ISR */ \
A("cli") /* 1 Disable global interrupts - Reenabling Stepper ISR can reenter amd temperature can reenter, and we want that, if it happens, after this ISR has ended */ \
A("sts %[timsk1], r16") /* 2 And restore the old value - This reenables the stepper ISR */ \
A("pop r16") /* 2 Get the temperature timer Interrupt mask register [TIMSK0] */ \
A("sts %[timsk0], r16") /* 2 And restore the old value - This reenables the temperature ISR */ \
A("pop r16") /* 2 Get the old SREG value */ \
A("out __SREG__, r16") /* 1 And restore the SREG value */ \
A("pop r16") /* 2 Restore R16 value */ \
A("reti") /* 4 Return from interrupt */ \
: \
: [timsk0] "i" ((uint16_t)&TIMSK0), \
[timsk1] "i" ((uint16_t)&TIMSK1), \
[msk0] "M" ((uint8_t)(1<<OCIE0B)),\
[msk1] "M" ((uint8_t)(1<<OCIE1A)) \
: \
); \
} \
void TIMER1_COMPA_vect_bottom()
#endif // HAL_STEP_TIMER_ISR
#ifndef HAL_TEMP_TIMER_ISR
/* 14 cycles maximum latency */
#define HAL_TEMP_TIMER_ISR() \
extern "C" void TIMER0_COMPB_vect() __attribute__ ((signal, naked, used, externally_visible)); \
extern "C" void TIMER0_COMPB_vect_bottom() asm ("TIMER0_COMPB_vect_bottom") __attribute__ ((used, externally_visible, noinline)); \
void TIMER0_COMPB_vect() { \
__asm__ __volatile__ ( \
A("push r16") /* 2 Save R16 */ \
A("in r16, __SREG__") /* 1 Get SREG */ \
A("push r16") /* 2 Save SREG into stack */ \
A("lds r16, %[timsk0]") /* 2 Load into R0 the Temperature timer Interrupt mask register */ \
A("andi r16,~%[msk0]") /* 1 Disable the temperature ISR */ \
A("sts %[timsk0], r16") /* 2 And set the new value */ \
A("sei") /* 1 Enable global interrupts - It is safe, as the temperature ISR is disabled, so we cannot reenter it */ \
A("push r16") /* 2 Save TIMSK0 into stack */ \
A("in r16, 0x3B") /* 1 Get RAMPZ register */ \
A("push r16") /* 2 Save RAMPZ into stack */ \
A("in r16, 0x3C") /* 1 Get EIND register */ \
A("push r0") /* C runtime can modify all the following registers without restoring them */ \
A("push r1") \
A("push r18") \
A("push r19") \
A("push r20") \
A("push r21") \
A("push r22") \
A("push r23") \
A("push r24") \
A("push r25") \
A("push r26") \
A("push r27") \
A("push r30") \
A("push r31") \
A("clr r1") /* C runtime expects this register to be 0 */ \
A("call TIMER0_COMPB_vect_bottom") /* Call the bottom handler - No inlining allowed, otherwise registers used are not saved */ \
A("pop r31") \
A("pop r30") \
A("pop r27") \
A("pop r26") \
A("pop r25") \
A("pop r24") \
A("pop r23") \
A("pop r22") \
A("pop r21") \
A("pop r20") \
A("pop r19") \
A("pop r18") \
A("pop r1") \
A("pop r0") \
A("out 0x3C, r16") /* 1 Restore EIND register */ \
A("pop r16") /* 2 Get the original RAMPZ register value */ \
A("out 0x3B, r16") /* 1 Restore RAMPZ register to its original value */ \
A("pop r16") /* 2 Get the original TIMSK0 value but with temperature ISR disabled */ \
A("ori r16,%[msk0]") /* 1 Enable temperature ISR */ \
A("cli") /* 1 Disable global interrupts - We must do this, as we will reenable the temperature ISR, and we don't want to reenter this handler until the current one is done */ \
A("sts %[timsk0], r16") /* 2 And restore the old value */ \
A("pop r16") /* 2 Get the old SREG */ \
A("out __SREG__, r16") /* 1 And restore the SREG value */ \
A("pop r16") /* 2 Restore R16 */ \
A("reti") /* 4 Return from interrupt */ \
: \
: [timsk0] "i"((uint16_t)&TIMSK0), \
[msk0] "M" ((uint8_t)(1<<OCIE0B)) \
: \
); \
} \
void TIMER0_COMPB_vect_bottom()
#endif // HAL_TEMP_TIMER_ISR

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -57,7 +57,7 @@
#include "../../inc/MarlinConfigPre.h"
#if HAS_GRAPHICAL_LCD
#if HAS_MARLINUI_U8GLIB
#include "../shared/Marduino.h"
#include "../shared/Delay.h"
@ -189,5 +189,5 @@ uint8_t u8g_com_HAL_AVR_sw_sp_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void
return 1;
}
#endif // HAS_GRAPHICAL_LCD
#endif // HAS_MARLINUI_U8GLIB
#endif // ARDUINO_ARCH_SAM

View File

@ -16,10 +16,9 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef __AVR__
#include "../../inc/MarlinConfig.h"

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,10 +16,9 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef ARDUINO_ARCH_SAM
#include "../../core/macros.h"

View File

@ -14,13 +14,12 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
/**
* Description: HAL for Arduino Due and compatible (SAM3X8E)
*
* For ARDUINO_ARCH_SAM
* HAL for Arduino Due and compatible (SAM3X8E)
*/
#ifdef ARDUINO_ARCH_SAM

View File

@ -16,81 +16,56 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* Description: HAL for Arduino Due and compatible (SAM3X8E)
*
* For ARDUINO_ARCH_SAM
* HAL for Arduino Due and compatible (SAM3X8E)
*/
#define CPU_32_BIT
#include "../shared/Marduino.h"
#include "../shared/eeprom_if.h"
#include "../shared/math_32bit.h"
#include "../shared/HAL_SPI.h"
#include "fastio.h"
#include "watchdog.h"
#include "timers.h"
#include <stdint.h>
#define _MSERIAL(X) Serial##X
#define MSERIAL(X) _MSERIAL(X)
#define Serial0 Serial
// Define MYSERIAL0/1 before MarlinSerial includes!
#if SERIAL_PORT == -1 || ENABLED(EMERGENCY_PARSER)
#define MYSERIAL0 customizedSerial1
#elif SERIAL_PORT == 0
#define MYSERIAL0 Serial
#elif SERIAL_PORT == 1
#define MYSERIAL0 Serial1
#elif SERIAL_PORT == 2
#define MYSERIAL0 Serial2
#elif SERIAL_PORT == 3
#define MYSERIAL0 Serial3
#elif WITHIN(SERIAL_PORT, 0, 3)
#define MYSERIAL0 MSERIAL(SERIAL_PORT)
#else
#error "The required SERIAL_PORT must be from -1 to 3. Please update your configuration."
#endif
#ifdef SERIAL_PORT_2
#if SERIAL_PORT_2 == SERIAL_PORT
#error "SERIAL_PORT_2 must be different from SERIAL_PORT. Please update your configuration."
#elif SERIAL_PORT_2 == -1 || ENABLED(EMERGENCY_PARSER)
#if SERIAL_PORT_2 == -1 || ENABLED(EMERGENCY_PARSER)
#define MYSERIAL1 customizedSerial2
#elif SERIAL_PORT_2 == 0
#define MYSERIAL1 Serial
#elif SERIAL_PORT_2 == 1
#define MYSERIAL1 Serial1
#elif SERIAL_PORT_2 == 2
#define MYSERIAL1 Serial2
#elif SERIAL_PORT_2 == 3
#define MYSERIAL1 Serial3
#elif WITHIN(SERIAL_PORT_2, 0, 3)
#define MYSERIAL1 MSERIAL(SERIAL_PORT_2)
#else
#error "SERIAL_PORT_2 must be from -1 to 3. Please update your configuration."
#endif
#define NUM_SERIAL 2
#else
#define NUM_SERIAL 1
#endif
#ifdef DGUS_SERIAL_PORT
#if DGUS_SERIAL_PORT == SERIAL_PORT
#error "DGUS_SERIAL_PORT must be different from SERIAL_PORT. Please update your configuration."
#elif defined(SERIAL_PORT_2) && DGUS_SERIAL_PORT == SERIAL_PORT_2
#error "DGUS_SERIAL_PORT must be different than SERIAL_PORT_2. Please update your configuration."
#elif DGUS_SERIAL_PORT == -1
#define DGUS_SERIAL internalDgusSerial
#elif DGUS_SERIAL_PORT == 0
#define DGUS_SERIAL Serial
#elif DGUS_SERIAL_PORT == 1
#define DGUS_SERIAL Serial1
#elif DGUS_SERIAL_PORT == 2
#define DGUS_SERIAL Serial2
#elif DGUS_SERIAL_PORT == 3
#define DGUS_SERIAL Serial3
#ifdef LCD_SERIAL_PORT
#if LCD_SERIAL_PORT == -1
#define LCD_SERIAL lcdSerial
#elif WITHIN(LCD_SERIAL_PORT, 0, 3)
#define LCD_SERIAL MSERIAL(LCD_SERIAL_PORT)
#else
#error "DGUS_SERIAL_PORT must be from -1 to 3. Please update your configuration."
#error "LCD_SERIAL_PORT must be from -1 to 3. Please update your configuration."
#endif
#endif
@ -130,13 +105,7 @@ void sei(); // Enable interrupts
void HAL_clear_reset_source(); // clear reset reason
uint8_t HAL_get_reset_source(); // get reset reason
//
// EEPROM
//
void eeprom_write_byte(uint8_t *pos, unsigned char value);
uint8_t eeprom_read_byte(uint8_t *pos);
void eeprom_read_block (void *__dst, const void *__src, size_t __n);
void eeprom_update_block (const void *__src, void *__dst, size_t __n);
inline void HAL_reboot() {} // reboot the board or restart the bootloader
//
// ADC
@ -144,15 +113,16 @@ void eeprom_update_block (const void *__src, void *__dst, size_t __n);
extern uint16_t HAL_adc_result; // result of last ADC conversion
#ifndef analogInputToDigitalPin
#define analogInputToDigitalPin(p) ((p < 12u) ? (p) + 54u : -1)
#define analogInputToDigitalPin(p) ((p < 12U) ? (p) + 54U : -1)
#endif
#define HAL_ANALOG_SELECT(ch)
inline void HAL_adc_init() {}//todo
#define HAL_START_ADC(ch) HAL_adc_start_conversion(ch)
#define HAL_ADC_VREF 3.3
#define HAL_ADC_RESOLUTION 10
#define HAL_START_ADC(ch) HAL_adc_start_conversion(ch)
#define HAL_READ_ADC() HAL_adc_result
#define HAL_ADC_READY() true

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -30,7 +30,7 @@
*/
/**
* Description: HAL for Arduino Due and compatible (SAM3X8E)
* HAL for Arduino Due and compatible (SAM3X8E)
*
* For ARDUINO_ARCH_SAM
*/
@ -595,7 +595,7 @@
SPI_Enable(SPI0);
SET_OUTPUT(DAC0_SYNC);
#if EXTRUDERS > 1
#if HAS_MULTI_EXTRUDER
SET_OUTPUT(DAC1_SYNC);
WRITE(DAC1_SYNC, HIGH);
#endif
@ -759,7 +759,6 @@
*
* All of the above can be avoided by defining FORCE_SOFT_SPI to force the
* display to use software SPI.
*
*/
void spiInit(uint8_t spiRate=6) { // Default to slowest rate if not specified)

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -122,6 +122,8 @@ public:
static void write(const uint8_t c);
static void flushTX();
static inline bool emergency_parser_enabled() { return Cfg::EMERGENCYPARSER; }
FORCE_INLINE static uint8_t dropped() { return Cfg::DROPPED_RX ? rx_dropped_bytes : 0; }
FORCE_INLINE static uint8_t buffer_overruns() { return Cfg::RX_OVERRUNS ? rx_buffer_overruns : 0; }
FORCE_INLINE static uint8_t framing_errors() { return Cfg::RX_FRAMING_ERRORS ? rx_framing_errors : 0; }

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -73,9 +73,7 @@ int MarlinSerialUSB::peek() {
pending_char = udi_cdc_getc();
#if ENABLED(EMERGENCY_PARSER)
emergency_parser.update(emergency_state, (char)pending_char);
#endif
TERN_(EMERGENCY_PARSER, emergency_parser.update(emergency_state, (char)pending_char));
return pending_char;
}
@ -97,9 +95,7 @@ int MarlinSerialUSB::read() {
int c = udi_cdc_getc();
#if ENABLED(EMERGENCY_PARSER)
emergency_parser.update(emergency_state, (char)c);
#endif
TERN_(EMERGENCY_PARSER, emergency_parser.update(emergency_state, (char)c));
return c;
}

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -44,7 +44,6 @@
#if HAS_SERVOS
#include "../shared/Marduino.h"
#include "../shared/servo.h"
#include "../shared/servo_private.h"

View File

@ -18,20 +18,19 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
/**
* Description: Tone function for Arduino Due and compatible (SAM3X8E)
* Derived from http://forum.arduino.cc/index.php?topic=136500.msg2903012#msg2903012
* Derived from https://forum.arduino.cc/index.php?topic=136500.msg2903012#msg2903012
*/
#ifdef ARDUINO_ARCH_SAM
#include "../../inc/MarlinConfig.h"
#include "HAL.h"
#include "timers.h"
static pin_t tone_pin;
volatile static int32_t toggles;

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -52,14 +52,13 @@
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#ifdef __SAM3X8E__
#include "../../../inc/MarlinConfigPre.h"
#if HAS_GRAPHICAL_LCD
#if HAS_MARLINUI_U8GLIB
#include <U8glib.h>
@ -145,6 +144,6 @@ uint8_t u8g_com_HAL_DUE_shared_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_va
return 1;
}
#endif // HAS_GRAPHICAL_LCD
#endif // HAS_MARLINUI_U8GLIB
#endif //__SAM3X8E__
#endif // __SAM3X8E__

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -57,7 +57,7 @@
#include "../../../inc/MarlinConfigPre.h"
#if HAS_GRAPHICAL_LCD && DISABLED(U8GLIB_ST7920)
#if HAS_MARLINUI_U8GLIB && DISABLED(U8GLIB_ST7920)
#undef SPI_SPEED
#define SPI_SPEED 2 // About 2 MHz
@ -144,5 +144,5 @@ uint8_t u8g_com_HAL_DUE_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void
return 1;
}
#endif // HAS_GRAPHICAL_LCD && !U8GLIB_ST7920
#endif // HAS_MARLINUI_U8GLIB && !U8GLIB_ST7920
#endif // ARDUINO_ARCH_SAM

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -57,7 +57,7 @@
#include "../../../inc/MarlinConfigPre.h"
#if HAS_GRAPHICAL_LCD
#if HAS_MARLINUI_U8GLIB
#include "../../shared/Delay.h"
@ -108,5 +108,5 @@ void u8g_spiSend_sw_DUE_mode_3(uint8_t val) { // 3.5MHz
}
}
#endif // HAS_GRAPHICAL_LCD
#endif // HAS_MARLINUI_U8GLIB
#endif // ARDUINO_ARCH_SAM

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -1,9 +1,10 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
* Copyright (c) 2016 Bob Cousins bobcousins42@googlemail.com
* Copyright (c) 2015-2016 Nico Tonnhofer wurstnase.reprap@gmail.com
* Copyright (c) 2016 Victor Perez victor_pv@hotmail.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -16,9 +17,14 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef ARDUINO_ARCH_SAM
#include "../../inc/MarlinConfig.h"
#if ENABLED(FLASH_EEPROM_EMULATION)
/* EEPROM emulation over flash with reduced wear
*
@ -47,22 +53,14 @@
* per page. We can't emulate EE endurance with FLASH for all
* bytes, but we can emulate endurance for a given percent of
* bytes.
*
*/
#ifdef ARDUINO_ARCH_SAM
#include "../../inc/MarlinConfig.h"
#if ENABLED(FLASH_EEPROM_EMULATION)
#include "../shared/Marduino.h"
#include "../shared/eeprom_api.h"
//#define EE_EMU_DEBUG
#define EEPROMSize 4096
#define PagesPerGroup 128
#define GroupCount 2
#define PageSize 256u
#define PageSize 256U
/* Flash storage */
typedef struct FLASH_SECTOR {
@ -134,15 +132,18 @@ static uint8_t buffer[256] = {0}, // The RAM buffer to accumulate writes
curPage = 0, // Current FLASH page inside the group
curGroup = 0xFF; // Current FLASH group
//#define EE_EMU_DEBUG
#ifdef EE_EMU_DEBUG
static void ee_Dump(int page,const void* data) {
#define DEBUG_OUT ENABLED(EE_EMU_DEBUG)
#include "../../core/debug_out.h"
static void ee_Dump(const int page, const void* data) {
#ifdef EE_EMU_DEBUG
const uint8_t* c = (const uint8_t*) data;
char buffer[80];
sprintf_P(buffer, PSTR("Page: %d (0x%04x)\n"), page, page);
SERIAL_ECHO(buffer);
DEBUG_ECHO(buffer);
char* p = &buffer[0];
for (int i = 0; i< PageSize; ++i) {
@ -152,12 +153,16 @@ static uint8_t buffer[256] = {0}, // The RAM buffer to accumulate writes
if ((i & 0xF) == 0xF) {
*p++ = '\n';
*p = 0;
SERIAL_ECHO(buffer);
DEBUG_ECHO(buffer);
p = &buffer[0];
}
}
}
#endif
#else
UNUSED(page);
UNUSED(data);
#endif
}
/* Flash Writing Protection Key */
#define FWP_KEY 0x5Au
@ -170,17 +175,16 @@ static uint8_t buffer[256] = {0}, // The RAM buffer to accumulate writes
#define EEFC_ERROR_FLAGS (EEFC_FSR_FLOCKE | EEFC_FSR_FCMDE)
#endif
/**
* Writes the contents of the specified page (no previous erase)
* @param page (page #)
* @param data (pointer to the data buffer)
*/
__attribute__ ((long_call, section (".ramfunc")))
static bool ee_PageWrite(uint16_t page,const void* data) {
static bool ee_PageWrite(uint16_t page, const void* data) {
uint16_t i;
uint32_t addrflash = ((uint32_t)getFlashStorage(page));
uint32_t addrflash = uint32_t(getFlashStorage(page));
// Read the flash contents
uint32_t pageContents[PageSize>>2];
@ -195,13 +199,11 @@ static bool ee_PageWrite(uint16_t page,const void* data) {
for (i = 0; i <PageSize >> 2; i++)
pageContents[i] = (((uint32_t*)data)[i]) | (~(pageContents[i] ^ ((uint32_t*)data)[i]));
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM PageWrite ", page);
SERIAL_ECHOLNPAIR(" in FLASH address ", (uint32_t)addrflash);
SERIAL_ECHOLNPAIR(" base address ", (uint32_t)getFlashStorage(0));
SERIAL_FLUSH();
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM PageWrite ", page);
DEBUG_ECHOLNPAIR(" in FLASH address ", (uint32_t)addrflash);
DEBUG_ECHOLNPAIR(" base address ", (uint32_t)getFlashStorage(0));
DEBUG_FLUSH();
// Get the page relative to the start of the EFC controller, and the EFC controller to use
Efc *efc;
@ -243,10 +245,8 @@ static bool ee_PageWrite(uint16_t page,const void* data) {
// Reenable interrupts
__enable_irq();
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Unlock failure for page ", page);
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Unlock failure for page ", page);
return false;
}
@ -270,10 +270,9 @@ static bool ee_PageWrite(uint16_t page,const void* data) {
// Reenable interrupts
__enable_irq();
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Write failure for page ", page);
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Write failure for page ", page);
return false;
}
@ -287,11 +286,11 @@ static bool ee_PageWrite(uint16_t page,const void* data) {
if (memcmp(getFlashStorage(page),data,PageSize)) {
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Verify Write failure for page ", page);
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Verify Write failure for page ", page);
ee_Dump( page,(uint32_t *) addrflash);
ee_Dump(-page,data);
ee_Dump( page, (uint32_t *)addrflash);
ee_Dump(-page, data);
// Calculate count of changed bits
uint32_t* p1 = (uint32_t*)addrflash;
@ -307,7 +306,7 @@ static bool ee_PageWrite(uint16_t page,const void* data) {
}
}
}
SERIAL_ECHOLNPAIR("--> Differing bits: ", count);
DEBUG_ECHOLNPAIR("--> Differing bits: ", count);
#endif
return false;
@ -324,15 +323,13 @@ __attribute__ ((long_call, section (".ramfunc")))
static bool ee_PageErase(uint16_t page) {
uint16_t i;
uint32_t addrflash = ((uint32_t)getFlashStorage(page));
uint32_t addrflash = uint32_t(getFlashStorage(page));
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM PageErase ", page);
SERIAL_ECHOLNPAIR(" in FLASH address ", (uint32_t)addrflash);
SERIAL_ECHOLNPAIR(" base address ", (uint32_t)getFlashStorage(0));
SERIAL_FLUSH();
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM PageErase ", page);
DEBUG_ECHOLNPAIR(" in FLASH address ", (uint32_t)addrflash);
DEBUG_ECHOLNPAIR(" base address ", (uint32_t)getFlashStorage(0));
DEBUG_FLUSH();
// Get the page relative to the start of the EFC controller, and the EFC controller to use
Efc *efc;
@ -373,10 +370,9 @@ static bool ee_PageErase(uint16_t page) {
// Reenable interrupts
__enable_irq();
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Unlock failure for page ",page);
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Unlock failure for page ",page);
return false;
}
@ -398,10 +394,9 @@ static bool ee_PageErase(uint16_t page) {
// Reenable interrupts
__enable_irq();
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Erase failure for page ",page);
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Erase failure for page ",page);
return false;
}
@ -415,20 +410,17 @@ static bool ee_PageErase(uint16_t page) {
uint32_t * aligned_src = (uint32_t *) addrflash;
for (i = 0; i < PageSize >> 2; i++) {
if (*aligned_src++ != 0xFFFFFFFF) {
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Verify Erase failure for page ",page);
ee_Dump( page,(uint32_t *) addrflash);
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Verify Erase failure for page ",page);
ee_Dump(page, (uint32_t *)addrflash);
return false;
}
}
return true;
}
static uint8_t ee_Read(uint32_t address, bool excludeRAMBuffer = false) {
static uint8_t ee_Read(uint32_t address, bool excludeRAMBuffer=false) {
uint32_t baddr;
uint32_t blen;
@ -511,7 +503,7 @@ static uint8_t ee_Read(uint32_t address, bool excludeRAMBuffer = false) {
return 0xFF;
}
static uint32_t ee_GetAddrRange(uint32_t address, bool excludeRAMBuffer = false) {
static uint32_t ee_GetAddrRange(uint32_t address, bool excludeRAMBuffer=false) {
uint32_t baddr,
blen,
nextAddr = 0xFFFF,
@ -603,7 +595,7 @@ static bool ee_IsPageClean(int page) {
return true;
}
static bool ee_Flush(uint32_t overrideAddress = 0xFFFFFFFF, uint8_t overrideData = 0xFF) {
static bool ee_Flush(uint32_t overrideAddress = 0xFFFFFFFF, uint8_t overrideData=0xFF) {
// Check if RAM buffer has something to be written
bool isEmpty = true;
@ -929,11 +921,9 @@ static void ee_Init() {
// If all groups seem to be used, default to first group
if (curGroup >= GroupCount) curGroup = 0;
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Current Group: ",curGroup);
SERIAL_FLUSH();
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Current Group: ",curGroup);
DEBUG_FLUSH();
// Now, validate that all the other group pages are empty
for (int grp = 0; grp < GroupCount; grp++) {
@ -941,11 +931,9 @@ static void ee_Init() {
for (int page = 0; page < PagesPerGroup; page++) {
if (!ee_IsPageClean(grp * PagesPerGroup + page)) {
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Page ", page, " not clean on group ", grp);
SERIAL_FLUSH();
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Page ", page, " not clean on group ", grp);
DEBUG_FLUSH();
ee_PageErase(grp * PagesPerGroup + page);
}
}
@ -955,66 +943,69 @@ static void ee_Init() {
// and also validate that all the other ones are clean
for (curPage = 0; curPage < PagesPerGroup; curPage++) {
if (ee_IsPageClean(curGroup * PagesPerGroup + curPage)) {
#ifdef EE_EMU_DEBUG
ee_Dump(curGroup * PagesPerGroup + curPage, getFlashStorage(curGroup * PagesPerGroup + curPage));
#endif
ee_Dump(curGroup * PagesPerGroup + curPage, getFlashStorage(curGroup * PagesPerGroup + curPage));
break;
}
}
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Active page: ", curPage);
SERIAL_FLUSH();
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Active page: ", curPage);
DEBUG_FLUSH();
// Make sure the pages following the first clean one are also clean
for (int page = curPage + 1; page < PagesPerGroup; page++) {
if (!ee_IsPageClean(curGroup * PagesPerGroup + page)) {
#ifdef EE_EMU_DEBUG
SERIAL_ECHO_START();
SERIAL_ECHOLNPAIR("EEPROM Page ", page, " not clean on active group ", curGroup);
SERIAL_FLUSH();
ee_Dump(curGroup * PagesPerGroup + page, getFlashStorage(curGroup * PagesPerGroup + page));
#endif
DEBUG_ECHO_START();
DEBUG_ECHOLNPAIR("EEPROM Page ", page, " not clean on active group ", curGroup);
DEBUG_FLUSH();
ee_Dump(curGroup * PagesPerGroup + page, getFlashStorage(curGroup * PagesPerGroup + page));
ee_PageErase(curGroup * PagesPerGroup + page);
}
}
}
uint8_t eeprom_read_byte(uint8_t* addr) {
ee_Init();
return ee_Read((uint32_t)addr);
}
/* PersistentStore -----------------------------------------------------------*/
void eeprom_write_byte(uint8_t* addr, uint8_t value) {
ee_Init();
ee_Write((uint32_t)addr, value);
}
#include "../shared/eeprom_api.h"
void eeprom_update_block(const void* __src, void* __dst, size_t __n) {
uint8_t* dst = (uint8_t*)__dst;
const uint8_t* src = (const uint8_t*)__src;
while (__n--) {
eeprom_write_byte(dst, *src);
++dst;
++src;
#ifndef MARLIN_EEPROM_SIZE
#define MARLIN_EEPROM_SIZE 0x1000 // 4KB
#endif
size_t PersistentStore::capacity() { return MARLIN_EEPROM_SIZE; }
bool PersistentStore::access_start() { ee_Init(); return true; }
bool PersistentStore::access_finish() { ee_Flush(); return true; }
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
while (size--) {
uint8_t * const p = (uint8_t * const)pos;
uint8_t v = *value;
// EEPROM has only ~100,000 write cycles,
// so only write bytes that have changed!
if (v != ee_Read(uint32_t(p))) {
ee_Write(uint32_t(p), v);
delay(2);
if (ee_Read(uint32_t(p)) != v) {
SERIAL_ECHO_MSG(STR_ERR_EEPROM_WRITE);
return true;
}
}
crc16(crc, &v, 1);
pos++;
value++;
}
return false;
}
void eeprom_read_block(void* __dst, const void* __src, size_t __n) {
uint8_t* dst = (uint8_t*)__dst;
uint8_t* src = (uint8_t*)__src;
while (__n--) {
*dst = eeprom_read_byte(src);
++dst;
++src;
}
}
void eeprom_flush() {
ee_Flush();
bool PersistentStore::read_data(int &pos, uint8_t* value, size_t size, uint16_t *crc, const bool writing/*=true*/) {
do {
uint8_t c = ee_Read(uint32_t(pos));
if (writing) *value = c;
crc16(crc, &c, 1);
pos++;
value++;
} while (--size);
return false;
}
#endif // FLASH_EEPROM_EMULATION
#endif // ARDUINO_ARCH_AVR
#endif // ARDUINO_ARCH_SAM

View File

@ -17,32 +17,29 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#ifdef ARDUINO_ARCH_SAM
#include "../../inc/MarlinConfigPre.h"
#if ENABLED(EEPROM_SETTINGS)
#include "../../inc/MarlinConfig.h"
#if USE_WIRED_EEPROM
/**
* PersistentStore for Arduino-style EEPROM interface
* with simple implementations supplied by Marlin.
*/
#include "../shared/eeprom_if.h"
#include "../shared/eeprom_api.h"
#if !defined(E2END) && ENABLED(FLASH_EEPROM_EMULATION)
#define E2END 0xFFF // Default to Flash emulated EEPROM size (EepromEmulation_Due.cpp)
#ifndef MARLIN_EEPROM_SIZE
#error "MARLIN_EEPROM_SIZE is required for I2C / SPI EEPROM."
#endif
extern void eeprom_flush();
bool PersistentStore::access_start() { return true; }
bool PersistentStore::access_finish() {
#if ENABLED(FLASH_EEPROM_EMULATION)
eeprom_flush();
#endif
return true;
}
size_t PersistentStore::capacity() { return MARLIN_EEPROM_SIZE; }
bool PersistentStore::access_start() { eeprom_init(); return true; }
bool PersistentStore::access_finish() { return true; }
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
while (size--) {
@ -61,7 +58,7 @@ bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, ui
crc16(crc, &v, 1);
pos++;
value++;
};
}
return false;
}
@ -76,7 +73,5 @@ bool PersistentStore::read_data(int &pos, uint8_t* value, size_t size, uint16_t
return false;
}
size_t PersistentStore::capacity() { return E2END + 1; }
#endif // EEPROM_SETTINGS
#endif // USE_WIRED_EEPROM
#endif // ARDUINO_ARCH_SAM

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -47,43 +47,21 @@ void endstop_ISR() { endstops.update(); }
void setup_endstop_interrupts() {
#define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE)
#if HAS_X_MAX
_ATTACH(X_MAX_PIN);
#endif
#if HAS_X_MIN
_ATTACH(X_MIN_PIN);
#endif
#if HAS_Y_MAX
_ATTACH(Y_MAX_PIN);
#endif
#if HAS_Y_MIN
_ATTACH(Y_MIN_PIN);
#endif
#if HAS_Z_MAX
_ATTACH(Z_MAX_PIN);
#endif
#if HAS_Z_MIN
_ATTACH(Z_MIN_PIN);
#endif
#if HAS_Z2_MAX
_ATTACH(Z2_MAX_PIN);
#endif
#if HAS_Z2_MIN
_ATTACH(Z2_MIN_PIN);
#endif
#if HAS_Z3_MAX
_ATTACH(Z3_MAX_PIN);
#endif
#if HAS_Z3_MIN
_ATTACH(Z3_MIN_PIN);
#endif
#if HAS_Z4_MAX
_ATTACH(Z4_MAX_PIN);
#endif
#if HAS_Z4_MIN
_ATTACH(Z4_MIN_PIN);
#endif
#if HAS_Z_MIN_PROBE_PIN
_ATTACH(Z_MIN_PROBE_PIN);
#endif
TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN));
TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN));
TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN));
TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN));
TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN));
TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN));
TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN));
TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN));
TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN));
TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN));
TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN));
TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN));
TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN));
TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN));
TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN));
TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN));
TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN));
}

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -58,7 +58,7 @@
*
* Now you can simply SET_OUTPUT(STEP); WRITE(STEP, HIGH); WRITE(STEP, LOW);
*
* Why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html
* Why double up on these macros? see https://gcc.gnu.org/onlinedocs/cpp/Stringification.html
*/
// Read a pin
@ -174,7 +174,7 @@
#define IS_OUTPUT(IO) ((digitalPinToPort(IO)->PIO_OSR & digitalPinToBitMask(IO)) != 0)
// Shorthand
#define OUT_WRITE(IO,V) { SET_OUTPUT(IO); WRITE(IO,V); }
#define OUT_WRITE(IO,V) do{ SET_OUTPUT(IO); WRITE(IO,V); }while(0)
// digitalRead/Write wrappers
#define extDigitalRead(IO) digitalRead(IO)

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -154,7 +154,7 @@ void Stepper::digipot_init() {
NVIC_SetPriority(PWM_IRQn, NVIC_EncodePriority(0, 10, 0)); // normal priority for PWM module (can stand some jitter on the Vref signals)
}
void Stepper::digipot_current(const uint8_t driver, const int16_t current) {
void Stepper::set_digipot_current(const uint8_t driver, const int16_t current) {
if (!(PWM->PWM_CH_NUM[0].PWM_CPRD == PWM_PERIOD_US)) digipot_init(); // Init PWM system if needed

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,7 +16,11 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
#if HAS_SPI_TFT || HAS_FSMC_TFT
#error "Sorry! TFT displays are not available for HAL/DUE."
#endif

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,13 +16,13 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
#if USE_FALLBACK_EEPROM
#undef SRAM_EEPROM_EMULATION
#undef SDCARD_EEPROM_EMULATION
#define FLASH_EEPROM_EMULATION
#elif EITHER(I2C_EEPROM, SPI_EEPROM)
#define USE_SHARED_EEPROM 1
#endif

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@ -52,8 +52,8 @@
#endif
#endif
#if ENABLED(FAST_PWM_FAN)
#error "FAST_PWM_FAN is not yet implemented for this platform."
#if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY
#error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on DUE."
#endif
#if HAS_TMC_SW_SERIAL

View File

@ -13,7 +13,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
@ -179,5 +179,4 @@ void pwm_details(int32_t pin) {
* ----------------+--------
* ID | PB11
* VBOF | PB10
*
*/

View File

@ -16,7 +16,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@ -16,14 +16,12 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
/**
* Description: HAL for Arduino Due and compatible (SAM3X8E)
*
* For ARDUINO_ARCH_SAM
* HAL Timers for Arduino Due and compatible (SAM3X8E)
*/
#ifdef ARDUINO_ARCH_SAM
@ -34,8 +32,6 @@
#include "../../inc/MarlinConfig.h"
#include "HAL.h"
#include "timers.h"
// ------------------------
// Local defines
// ------------------------

View File

@ -15,15 +15,13 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* HAL for Arduino Due and compatible (SAM3X8E)
*
* For ARDUINO_ARCH_SAM
* HAL Timers for Arduino Due and compatible (SAM3X8E)
*/
#include <stdint.h>
@ -40,11 +38,17 @@ typedef uint32_t hal_timer_t;
#define HAL_TIMER_RATE ((F_CPU) / 2) // frequency of timers peripherals
#ifndef STEP_TIMER_NUM
#define STEP_TIMER_NUM 2 // index of timer to use for stepper
#define STEP_TIMER_NUM 2 // Timer Index for Stepper
#endif
#ifndef PULSE_TIMER_NUM
#define PULSE_TIMER_NUM STEP_TIMER_NUM
#endif
#ifndef TEMP_TIMER_NUM
#define TEMP_TIMER_NUM 4 // Timer Index for Temperature
#endif
#ifndef TONE_TIMER_NUM
#define TONE_TIMER_NUM 6 // index of timer to use for beeper tones
#endif
#define TEMP_TIMER_NUM 4 // index of timer to use for temperature
#define PULSE_TIMER_NUM STEP_TIMER_NUM
#define TONE_TIMER_NUM 6 // index of timer to use for beeper tones
#define TEMP_TIMER_FREQUENCY 1000 // temperature interrupt frequency
@ -66,8 +70,12 @@ typedef uint32_t hal_timer_t;
#ifndef HAL_STEP_TIMER_ISR
#define HAL_STEP_TIMER_ISR() void TC2_Handler()
#endif
#define HAL_TEMP_TIMER_ISR() void TC4_Handler()
#define HAL_TONE_TIMER_ISR() void TC6_Handler()
#ifndef HAL_TEMP_TIMER_ISR
#define HAL_TEMP_TIMER_ISR() void TC4_Handler()
#endif
#ifndef HAL_TONE_TIMER_ISR
#define HAL_TONE_TIMER_ISR() void TC6_Handler()
#endif
// ------------------------
// Types

View File

@ -0,0 +1,18 @@
#
# Set upload_command
#
# Windows: bossac.exe
# Other: leave unchanged
#
import platform
current_OS = platform.system()
if current_OS == 'Windows':
Import("env")
# Use bossac.exe on Windows
env.Replace(
UPLOADCMD="bossac --info --unlock --write --verify --reset --erase -U false --boot $SOURCE"
)

View File

@ -43,7 +43,7 @@
#pragma once
/**
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
/**
@ -93,5 +93,5 @@
#define USB_VBOF_GPIO (PIO_PB10_IDX)
#define USB_VBOF_FLAGS (PIO_PERIPH_A | PIO_DEFAULT)
/*! Active level of the USB_VBOF output pin. */
#define USB_VBOF_ACTIVE_LEVEL LOW
#define USB_VBOF_ACTIVE_STATE LOW
/* ------------------------------------------------------------------------ */

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef UTILS_COMPILER_H
@ -173,11 +173,11 @@
# define __always_inline __forceinline
#elif (defined __GNUC__)
#ifdef __always_inline
# undef __always_inline
# undef __always_inline
#endif
# define __always_inline inline __attribute__((__always_inline__))
# define __always_inline inline __attribute__((__always_inline__))
#elif (defined __ICCARM__)
# define __always_inline _Pragma("inline=forced")
# define __always_inline _Pragma("inline=forced")
#endif
/**
@ -188,11 +188,11 @@
* heuristics and not inline the function.
*/
#ifdef __CC_ARM
# define __no_inline __attribute__((noinline))
# define __no_inline __attribute__((noinline))
#elif (defined __GNUC__)
# define __no_inline __attribute__((__noinline__))
# define __no_inline __attribute__((__noinline__))
#elif (defined __ICCARM__)
# define __no_inline _Pragma("inline=never")
# define __no_inline _Pragma("inline=never")
#endif
/*! \brief This macro is used to test fatal errors.
@ -211,9 +211,9 @@
# else
#undef TEST_SUITE_DEFINE_ASSERT_MACRO
# define Assert(expr) \
{\
if (!(expr)) while (true);\
}
{\
if (!(expr)) while (true);\
}
# endif
#else
# define Assert(expr) ((void) 0)
@ -609,37 +609,37 @@ typedef struct
# define clz(u) ((u) ? __CLZ(u) : 32)
#else
# define clz(u) (((u) == 0) ? 32 : \
((u) & (1ul << 31)) ? 0 : \
((u) & (1ul << 30)) ? 1 : \
((u) & (1ul << 29)) ? 2 : \
((u) & (1ul << 28)) ? 3 : \
((u) & (1ul << 27)) ? 4 : \
((u) & (1ul << 26)) ? 5 : \
((u) & (1ul << 25)) ? 6 : \
((u) & (1ul << 24)) ? 7 : \
((u) & (1ul << 23)) ? 8 : \
((u) & (1ul << 22)) ? 9 : \
((u) & (1ul << 21)) ? 10 : \
((u) & (1ul << 20)) ? 11 : \
((u) & (1ul << 19)) ? 12 : \
((u) & (1ul << 18)) ? 13 : \
((u) & (1ul << 17)) ? 14 : \
((u) & (1ul << 16)) ? 15 : \
((u) & (1ul << 15)) ? 16 : \
((u) & (1ul << 14)) ? 17 : \
((u) & (1ul << 13)) ? 18 : \
((u) & (1ul << 12)) ? 19 : \
((u) & (1ul << 11)) ? 20 : \
((u) & (1ul << 10)) ? 21 : \
((u) & (1ul << 9)) ? 22 : \
((u) & (1ul << 8)) ? 23 : \
((u) & (1ul << 7)) ? 24 : \
((u) & (1ul << 6)) ? 25 : \
((u) & (1ul << 5)) ? 26 : \
((u) & (1ul << 4)) ? 27 : \
((u) & (1ul << 3)) ? 28 : \
((u) & (1ul << 2)) ? 29 : \
((u) & (1ul << 1)) ? 30 : \
((u) & (1UL << 31)) ? 0 : \
((u) & (1UL << 30)) ? 1 : \
((u) & (1UL << 29)) ? 2 : \
((u) & (1UL << 28)) ? 3 : \
((u) & (1UL << 27)) ? 4 : \
((u) & (1UL << 26)) ? 5 : \
((u) & (1UL << 25)) ? 6 : \
((u) & (1UL << 24)) ? 7 : \
((u) & (1UL << 23)) ? 8 : \
((u) & (1UL << 22)) ? 9 : \
((u) & (1UL << 21)) ? 10 : \
((u) & (1UL << 20)) ? 11 : \
((u) & (1UL << 19)) ? 12 : \
((u) & (1UL << 18)) ? 13 : \
((u) & (1UL << 17)) ? 14 : \
((u) & (1UL << 16)) ? 15 : \
((u) & (1UL << 15)) ? 16 : \
((u) & (1UL << 14)) ? 17 : \
((u) & (1UL << 13)) ? 18 : \
((u) & (1UL << 12)) ? 19 : \
((u) & (1UL << 11)) ? 20 : \
((u) & (1UL << 10)) ? 21 : \
((u) & (1UL << 9)) ? 22 : \
((u) & (1UL << 8)) ? 23 : \
((u) & (1UL << 7)) ? 24 : \
((u) & (1UL << 6)) ? 25 : \
((u) & (1UL << 5)) ? 26 : \
((u) & (1UL << 4)) ? 27 : \
((u) & (1UL << 3)) ? 28 : \
((u) & (1UL << 2)) ? 29 : \
((u) & (1UL << 1)) ? 30 : \
31)
#endif
#endif
@ -654,38 +654,38 @@ typedef struct
#if (defined __GNUC__) || (defined __CC_ARM)
# define ctz(u) ((u) ? __builtin_ctz(u) : 32)
#else
# define ctz(u) ((u) & (1ul << 0) ? 0 : \
(u) & (1ul << 1) ? 1 : \
(u) & (1ul << 2) ? 2 : \
(u) & (1ul << 3) ? 3 : \
(u) & (1ul << 4) ? 4 : \
(u) & (1ul << 5) ? 5 : \
(u) & (1ul << 6) ? 6 : \
(u) & (1ul << 7) ? 7 : \
(u) & (1ul << 8) ? 8 : \
(u) & (1ul << 9) ? 9 : \
(u) & (1ul << 10) ? 10 : \
(u) & (1ul << 11) ? 11 : \
(u) & (1ul << 12) ? 12 : \
(u) & (1ul << 13) ? 13 : \
(u) & (1ul << 14) ? 14 : \
(u) & (1ul << 15) ? 15 : \
(u) & (1ul << 16) ? 16 : \
(u) & (1ul << 17) ? 17 : \
(u) & (1ul << 18) ? 18 : \
(u) & (1ul << 19) ? 19 : \
(u) & (1ul << 20) ? 20 : \
(u) & (1ul << 21) ? 21 : \
(u) & (1ul << 22) ? 22 : \
(u) & (1ul << 23) ? 23 : \
(u) & (1ul << 24) ? 24 : \
(u) & (1ul << 25) ? 25 : \
(u) & (1ul << 26) ? 26 : \
(u) & (1ul << 27) ? 27 : \
(u) & (1ul << 28) ? 28 : \
(u) & (1ul << 29) ? 29 : \
(u) & (1ul << 30) ? 30 : \
(u) & (1ul << 31) ? 31 : \
# define ctz(u) ((u) & (1UL << 0) ? 0 : \
(u) & (1UL << 1) ? 1 : \
(u) & (1UL << 2) ? 2 : \
(u) & (1UL << 3) ? 3 : \
(u) & (1UL << 4) ? 4 : \
(u) & (1UL << 5) ? 5 : \
(u) & (1UL << 6) ? 6 : \
(u) & (1UL << 7) ? 7 : \
(u) & (1UL << 8) ? 8 : \
(u) & (1UL << 9) ? 9 : \
(u) & (1UL << 10) ? 10 : \
(u) & (1UL << 11) ? 11 : \
(u) & (1UL << 12) ? 12 : \
(u) & (1UL << 13) ? 13 : \
(u) & (1UL << 14) ? 14 : \
(u) & (1UL << 15) ? 15 : \
(u) & (1UL << 16) ? 16 : \
(u) & (1UL << 17) ? 17 : \
(u) & (1UL << 18) ? 18 : \
(u) & (1UL << 19) ? 19 : \
(u) & (1UL << 20) ? 20 : \
(u) & (1UL << 21) ? 21 : \
(u) & (1UL << 22) ? 22 : \
(u) & (1UL << 23) ? 23 : \
(u) & (1UL << 24) ? 24 : \
(u) & (1UL << 25) ? 25 : \
(u) & (1UL << 26) ? 26 : \
(u) & (1UL << 27) ? 27 : \
(u) & (1UL << 28) ? 28 : \
(u) & (1UL << 29) ? 29 : \
(u) & (1UL << 30) ? 30 : \
(u) & (1UL << 31) ? 31 : \
32)
#endif
#endif
@ -1106,17 +1106,16 @@ static inline uint16_t convert_byte_array_to_16_bit(uint8_t *data)
/* Converts a 8 Byte array into a 32-Bit value */
static inline uint32_t convert_byte_array_to_32_bit(uint8_t *data)
{
union
{
uint32_t u32;
uint8_t u8[8];
}long_addr;
uint8_t index;
for (index = 0; index < 4; index++)
{
long_addr.u8[index] = *data++;
}
return long_addr.u32;
union
{
uint32_t u32;
uint8_t u8[8];
}long_addr;
uint8_t index;
for (index = 0; index < 4; index++) {
long_addr.u8[index] = *data++;
}
return long_addr.u32;
}
/**

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _CONF_ACCESS_H_

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef CONF_CLOCK_H_INCLUDED

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _CONF_USB_H_
@ -78,10 +78,6 @@
//! To define a Full speed device
//#define USB_DEVICE_FULL_SPEED
#if MB(ARCHIM1)
#define USB_DEVICE_FULL_SPEED
#endif
//! To authorize the High speed
#ifndef USB_DEVICE_FULL_SPEED
#if (UC3A3||UC3A4)

View File

@ -53,7 +53,7 @@
*
******************************************************************************/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifdef ARDUINO_ARCH_SAM

View File

@ -53,7 +53,7 @@
*
******************************************************************************/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef CHIP_GENCLK_H_INCLUDED

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _MREPEAT_H_

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef CHIP_OSC_H_INCLUDED

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef CHIP_PLL_H_INCLUDED

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _PREPROCESSOR_H_

View File

@ -52,7 +52,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _SBC_PROTOCOL_H_
#define _SBC_PROTOCOL_H_

View File

@ -42,7 +42,7 @@
*
******************************************************************************/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/

View File

@ -45,7 +45,7 @@
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _SPC_PROTOCOL_H_
#define _SPC_PROTOCOL_H_

View File

@ -41,7 +41,7 @@
*
*/
/*
* Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
* Support and FAQ: visit <a href="https://www.atmel.com/design-support/">Atmel Support</a>
*/
#ifndef _STRINGZ_H_

Some files were not shown because too many files have changed in this diff Show More