274 Commits (54a12ee1d6557d820fb353a318525aebd7f6c082)

Author SHA1 Message Date
Scott Lahteine 808b076000 Update some ABL/UBL conditionals 6 years ago
Scott Lahteine e15354e387
Simplify serial port redirect (#13234) 6 years ago
Scott Lahteine 3c9a7926c2 Fix compile error with JUNCTION_DEVIATION
See #13000
6 years ago
Scott Lahteine 0feeef2604 Update copyright in headers 6 years ago
Rolf Werum 524c6c10bf MAGNETIC_PARKING_EXTRUDER (#12351) 6 years ago
Scott Lahteine 4200bd2fc1
Report on M92 with no arguments (#12833) 6 years ago
Scott Lahteine d4d1b28a06 Fix some include paths 6 years ago
Scott Lahteine 4fa1c52688 Tweak serial output code 6 years ago
teemuatlut e6805582a6 M569 to change stepping mode. Add new TMC section to LCD. (#12884) 6 years ago
Scott Lahteine 19fea772e5 Use E_AXIS_N where it makes sense 6 years ago
Scott Lahteine 371d9a1acf Fix line-endings, formatting, whitespace
Followup to #12770
6 years ago
Ludy 135c74017c Fix compile DEBUG_EEPROM_READWRITE error (#12746) 6 years ago
Ludy cfc5e96b4b Move JD to Config.h (and fix jerk->eeprom bug) (#12720) 6 years ago
Scott Lahteine e8bda62d2a Followup to servo angles patch
Fix #12594
6 years ago
Scott Lahteine aaf862aef2
Fix angles for disabled EDITABLE_SERVO_ANGLES (#12559) 6 years ago
Scott Lahteine c986239837
A single SERIAL_ECHO macro type (#12557) 6 years ago
Ludy 22d7fed60a Fix compile error with SD_FIRMWARE_UPDATE (#12462) 7 years ago
Scott Lahteine d97e31db4c
Optimize Power-Loss Recovery (#12440) 7 years ago
Scott Lahteine a0c795b097
Encapsulate common display code in a singleton (#12395)
* Encapsulate common LCD code in a singleton
* Depend more UBL code on UBL_DEVEL_DEBUGGING
  - Since most users don't need the debugging on at all times, this helps reduce the default build size for UBL by over 2K, a little closer to fitting on 128K boards.
7 years ago
Scott Lahteine ef724edd80 Apply HAS_LCD_MENU in EEPROM code 7 years ago
InsanityAutomation 6471a75a22 Combine more tool-change variables (#12137) 7 years ago
Scott Lahteine c04cf127f7 Fix EEPROM servo angles init, section grouping 7 years ago
Scott Lahteine d1ff22b983 Revive SCARA's home offset (unimplemented) 7 years ago
Scott Lahteine 31c28d0dd2
Drop pgm_read_*_near and let headers choose (#12301)
- Drop `pgm_read_*_near` and let headers choose.
- Define `USE_EXECUTE_COMMANDS_IMMEDIATE` as a conditional.
- Add `process_subcommands_now` for SRAM-based commands.
7 years ago
Scott Lahteine 946cf8b453 EEPROM read code grouping 7 years ago
Scott Lahteine d015f746cc
Fix some compile warnings (#12220) 7 years ago
Roman Moravčík d801f85963 Correct EEPROM read/write disparities. (#12169) 7 years ago
Scott Lahteine b641571098 Replace types.h with millis_t.h 7 years ago
InsanityAutomation 3ec3872730 Single Z raise value for all tool-changing / parking (#12090)
* Universal tool-change Z lift
* Add TOOLCHANGE_ZRAISE to example configs
* Park/unpark changes to example configs
* Implement DEBUG_DXC_MODE
7 years ago
Scott Lahteine 8bf596bd4c RETRACT_ZLIFT => RETRACT_ZRAISE 7 years ago
Karl Andersson a40458405a Fix datasize error when FWRETRACT is disabled (#12086) 7 years ago
Scott Lahteine 951b25163e
Extend M217 with configurable park/raise (#12076) 7 years ago
Scott Lahteine e8d2cf4fb5 EEPROM followup (tmc_stepper_current_t) 7 years ago
InsanityAutomation d332fcb8fa Fix firmware-retract compile errors (#12061) 7 years ago
Scott Lahteine d556dc1865
Fix and improve EEPROM storage (#12054)
* Clean up Temperature PID
* Improve EEPROM read/write/validate
* Group `SINGLENOZZLE` saved settings
* Group planner saved settings
* Group filament change saved settings
* Group skew saved settings
* Group `FWRETRACT` saved settings
7 years ago
Scott Lahteine 9b5c1a5e77 Fix EEPROM checksum bug
Addressing #12048
7 years ago
Scott Lahteine cf5284cdf2
Add SD Firmware Update capability (#12043)
Co-Authored-By: timoxd7 <timoxd7@users.noreply.github.com>
7 years ago
InsanityAutomation 74cd6cb4fc Single nozzle filament change (#11994) 7 years ago
Scott Lahteine d6b0fbd771
Use uint8_t for all fan speeds (#12032) 7 years ago
Scott Lahteine e8d677620c Use NUM_SERVOS in EEPROM code
Fix #12015
7 years ago
Scott Lahteine c40ea1f0fd Update EEPROM_VERSION
And set EEPROM_OFFSET to 0, since the historical 100 skipped bytes are never used.
7 years ago
Scott Lahteine 1358bd9319 Make MAX_EXTRUDERS always 6 7 years ago
teemuatlut c3229e1b34 Migrate to a new TMC library (#11943) 7 years ago
Thomas Moore 3286325044 Add TMC2130 sensorless probing 7 years ago
Victor Tseng 93839e2f73 Add option to enable/disable autoretract altogether (#11904) 7 years ago
Scott Lahteine cee34f7290
Followup for BABYSTEP_HOTEND_Z_OFFSET (#11916) 7 years ago
InsanityAutomation 1104054d73 2.0 IDEX Independent z offset and other fixes (#11862)
* Add Formbot Raptor board

Co-Authored-By: InsanityAutomation <insanityautomation@users.noreply.github.com>

* Add a second Z probe Z offset

Co-Authored-By: InsanityAutomation <insanityautomation@users.noreply.github.com>

* Modify method to utilize live adjustment of hotend z offset

Should probably move config option to babystepping and rename as it may now apply to all multiextruder systems

* Move config item and catchup other code to current method
7 years ago
Scott Lahteine ea9eb2fc8f Fix servo angles in config-store 7 years ago
Scott Lahteine beab9733f8 Remove extra clauses in config-store 7 years ago
Roxy-3D 0780913848 IDEX Improvements (#11848) 7 years ago
Scott Lahteine 1718eff54a Code changes supporting up to 6 extruders 7 years ago
Thomas Moore c437bb08f1 Overhaul of the planner (#11578)
- Move FWRETRACT to the planner
- Combine leveling, skew, etc. in a single modifier method
- Have kinematic and non-kinematic moves call one planner method
7 years ago
Holger Müller 1a6f2b29b8 Add support for Triple-Z steppers/endstops 7 years ago
Scott Lahteine 8584d3697d Fix servo count define conflict
`MAX_SERVOS` => `NUM_SERVO_PLUGS`
7 years ago
Sam Lane 4f883d5971 [2.0.x] Extruder-Distinct Linear Advance K Factors (#11789) 7 years ago
Scott Lahteine 8e18e48d49
Merge pull request #11610 from Freeviv/bugfix-2.0.x
[2.0.x] Editable servo angles
7 years ago
scott0122 ada85d5585 Improve HOTEND OFFSET Z display precision to 3 (#11686) 7 years ago
Scott Lahteine 3e81745e81 Fix issues, make optional 7 years ago
Jan aa80e448e2 Store servo angles in EEPROM 7 years ago
Scott Lahteine d1c9517903 Followup to hotend_offset[Z] patch 7 years ago
Dave Johnson c64199941e Compile only selected PIO environment (#11519) 7 years ago
Scott Lahteine 6a8b906318 Followup for persistent_store_api.h 7 years ago
Chris Pepper 66d2b48b59 Update PersistentStore api (#11538)
- Clean up the API to use a `static` class instance to adhere to Marlin convention
- Add `const` position data access for read/write
- Add Storage capacity to the interface
7 years ago
teemuatlut fbcdf5eaeb Simplify stepper driver per-axis selection 7 years ago
Roxy-3D 71df1f7f57
Don't display M421 information for UBL at startup
It takes too long to display the mesh data for large mesh's at startup.   We should consider ways to speed this up.
Perhaps it makes sense to display an entire row of the mesh instead of just one mesh point?
7 years ago
Scott Lahteine 63f4c9bdb9 Followup to float maths patch 7 years ago
etagle 1367df2875 Replace double with float, optimize calculation 7 years ago
Andy Shaw 3b3029c4bf Make max_e_jerk an array to reduce CPU usage (#11118) 7 years ago
Giuliano 8d8f257384 [2.0.x] Fix advanced pause init values (#11095)
Fixed for cycle used to initialize default values
7 years ago
Scott Lahteine da94e0bd27 Unsigned eeprom mesh addresses 7 years ago
Scott Lahteine 9d04f47d98 Improvements for junction_deviation_mm
- Drop `max_jerk` with `JUNCTION_DEVIATION`
- Add `max_e_jerk_factor` for use by `LIN_ADVANCE`
- Recalculate `max_e_jerk_factor` when `junction_deviation_mm` changes
- Fix LCD editing of `junction_deviation_mm`
7 years ago
Scott Lahteine a2f521d34b
Add Junction Deviation mm runtime setting (#10990) 7 years ago
Scott Lahteine 55aedf036b Fix M503 ABL mesh report. (Zero-based IJ indices) 7 years ago
Scott Lahteine d8b983f624
More concise M503 output for M906, M913, M914 (#10947) 7 years ago
Scott Lahteine 83d42f33e1 Add HAS_HOTEND_OFFSET_Z conditional 7 years ago
GMagician 3c76bda2d8 Fix switching extruder
`DONT_SWITCH` got lost along the way. Replace it with `DO_SWITCH_EXTRUDER` and adjust the code.
7 years ago
Scott Lahteine 08e36e264e Apply _AXIS macro 7 years ago
Scott Lahteine 625035a9ce
Fix M301 access to lpq_len (#10714)
Co-Authored-By: Zwaubel
7 years ago
Giuliano d99f1b2245 [2.0.x] EEPROM code cleanup (#10710) 7 years ago
Scott Lahteine b76344c080 More Trinamic cleanup 7 years ago
Scott Lahteine 6d9ec1852a Fix compilation of say_units
Fixes #10663
7 years ago
Scott Lahteine 55f1f8446b Show correct current units in M503 7 years ago
Sean 2d9b0a66fe Add Filament Change accelerations 7 years ago
Scott Lahteine 4c79dc1093 Fix a Serial+EEPROM compile error
Fixes #10278
7 years ago
Scott Lahteine 02f0f95d40
Handle disabled HYBRID_THRESHOLD in EEPROM (#10275) 7 years ago
Scott Lahteine 2bc7f416ee Fix missing comma in tmc_sgt
Fixes #10209
7 years ago
Bob-the-Kuhn 9656a82609 Fix G53/CNC_COORDINATE_SYSTEMS compilation, Travis testing (#10227) 7 years ago
Scott Lahteine b287560258 Fix say_M603 7 years ago
Bob-the-Kuhn 8870f9b1da Fix M503 helper functions following TMC updates (#10197) 7 years ago
Scott Lahteine 9da0797e29 Fix EEPROM size of tmc_hybrid_threshold
Followup to #10102
7 years ago
Roxy-3D 1628a9e864
make data declarations consistent 7 years ago
Scott Lahteine a46bac3100 Add 'I' parameter to M906/M913/M914; 'T' to M906/M913 7 years ago
Scott Lahteine c95450016b Improve Trinamic support in the EEPROM 7 years ago
Scott Lahteine 772810fb24 Followup to PORTVAR patch 7 years ago
Scott Lahteine 4aebe3d82e Pretty up EEPROM port args 7 years ago
Scott Lahteine 239902f861 Fix E2END and add EEPROM to Smart RAMPS
Reference #9983
7 years ago
Scott Lahteine 49ca67202f Patch configuration_store for extra serial port
Fix #9948
7 years ago
Scott Lahteine 966d9af98a Mesh export in Bilinear + UBL M503 7 years ago
Scott Lahteine 8d5a77001e EEPROM parity with 1.1.x 7 years ago
Scott Lahteine 0557ab5780 Fix CONFIG_ECHO_START bug
In reference to #9633
7 years ago
Scott Lahteine 2bd252b501
[2.0.x] LIN_ADVANCE v1.5 (#9712) 7 years ago
teemuatlut 5968a3e60e Add ADVANCED_PAUSE_FEATURE include 7 years ago
Scott Lahteine 472229b974 Fix #9681 7 years ago
Thomas Moore 1541224a81 Enable Z axis and delta sensorless homing (#9516) 7 years ago
Scott Lahteine 2bea1bda56 Move more strings to PROGMEM 7 years ago
Scott Lahteine 1dcfe193ac Optimize some serial strings 7 years ago
Scott Lahteine f7f8569bbf Fix skew settings report precision
Followup to changes from #8843
7 years ago
Scott Lahteine 90d011cc48 Use ADD_PORT_ARG for all cases 7 years ago
Thomas Moore 429e6ba8a6 Fix lcd_preheat dummy variable types 7 years ago
Thomas Moore cfd989d7c5 Fix EEPROM SettingsData for 32-bit architectures 7 years ago
Bob-the-Kuhn e633ce06c7 LCD contrast type mismatch is back
WORKS!
7 years ago
Thomas Moore f7efac57b7 Multi-host support 7 years ago
Scott Lahteine 7e000e6af4
More EEPROM field debugging (#9123) 7 years ago
Scott Lahteine 99516572b1 Fix TMC current read from EEPROM 7 years ago
Scott Lahteine 60d07f20e7 Make mbl.has_mesh() a method 7 years ago
Scott Lahteine 2b5a9be49c
Fix M503 skew output
Followup to 19e75ccf86
7 years ago
Scott Lahteine 702c8acdd5 Settings FIELD_TEST fix 7 years ago
Scott Lahteine e89f1453ab UBL G29 works without settings.load() 7 years ago
Scott Lahteine 950be70a33 Add FIELD_TEST to validate storage 7 years ago
Scott Lahteine 760c912ab9 Add data size validation 7 years ago
Scott Lahteine b91ca168fb Add a struct defining EEPROM storage 7 years ago
Scott Lahteine 51e0f2bee3 Add MarlinSettings::validate() 7 years ago
Scott Lahteine 878f54c27b Write filler with NO_VOLUMETRICS 7 years ago
Scott Lahteine 3ea6745b36 Pretty up TMC current write 7 years ago
Scott Lahteine 1c41de16d4 Trailing whitespace clean 7 years ago
Scott Lahteine 1746a7352e
Merge pull request #9042 from thinkyhead/bf2_M701_M702
[2.0.x] Improved Pause/Load/Unload, M701-M702
7 years ago
Roxy-3D 3a4e107b6b
use SERIAL_EOL(); instead of new line string 7 years ago
Roxy-3D 19e75ccf86
Add enough precision so planner.xy_skew_factor doesn't print as 0.00 7 years ago
Scott Lahteine 7541316bb4 Add M701/M702 Filament Load/Unload, M603 7 years ago
Scott Lahteine a80f2eea23 Group leveling reports for folding 7 years ago
Thomas Moore 8afc4f8d9d Fix UBL compilation warnings 7 years ago
Scott Lahteine 5effe1590c Fix NO_VOLUMETRICS bug 7 years ago
Scott Lahteine 4b49ea1e92 General cleanup of config-store, reset_bed_level 7 years ago
Scott Lahteine 933f76fda3 Option to disable all volumetric extrusion 7 years ago
Scott Lahteine fc9ee1a4de Fix up serial sanity check 7 years ago
teemuatlut 0cd1e91056 [2.0.x] TMC driver update (#8769) 7 years ago
victorpv a5150c83a2 [2.0.x] Multiple updates to STM32F1 HAL (#8733)
* STM32F1 HAL

Adding files for STM32F1 HAL based on libmaple/stm32duino core.
Current persistent_store uses cardreader changes to be sent in separate
commit, but could be changed to use i2c eeprom.
There is another persistent_store implementation that uses the MCU flash memory
to emulate eeprom
Adding readme with some information about the stm32 HAL.

* Switch to Timer4 to avoid a hard reset on STM32F103C6 boards

On bluepill STM32F103C6 boards, using Timer5 results in a error() vector call. Switch to 4 since these are both general purpose, 16 bit timers.

* Add support for EEPROM emulation using Flash

Some low end machines doe not have EEPROM support. Simulate it using the last two pages of flash. Flash does not allow rewrite between erases, so skip writing the working version if that's enabled.

* Basic Pins for a malyan M200

This is a work in progress to go hand in hand with the STM32 work.

* Add support for ADC with DMA. This work has exposed a problem with the pin enumerations in STM boards vs what marlin expects (i.e, try defining PA0 as a temp pin). The hack can be removed with we go to fastio completely. To see this work, set something in adc_pins to a value like PA0 and connect your pullup resistor'd thermistor.

* Missing file - change HAL_adc_init to actually do something

We have an actual ADC init function now.

* Remove pinmode hack

Remove the pin mode hack that I was using to init PA0.

Updated Readme.md

* Several changes to timers and GPIO

Faster GPIO, and faster timer functions by accesing registers and
libmaple.
Still more changes pending for the Timer's code to skip using the
HardwareTimer class altogether.

Switch all enums to be within #defines

This change allows a user to have, for instance, TEMP_4 and TEMP_BED definied but nothing else. The enums which are not defined move "out", allowing the first ones to take the slots in the enum, and since the array is sized on ADC_PIN_COUNT, we always have the right size data and in order.

* Update Malyan M200 pins

Update Malyan M200 pins with correct fan values.

* Test all pins on actual hardware, update definitions

Some of the pin definitions were from knowlege base/pdfs. Now they've been tested against actual hardware. This should be very close to final.

* Update HAL_timers_Stm32f1.cpp

* Add sample configurations for Malyan M200

Add sample configuration for Malyan M200 without bed leveling, and move fan to auto cool E0 since this printer by default has only one fan.


Choose the timer based on MCU defintion. Timer5 is not valid on C8/CB class boards, so use Timer4 for the step timer.


readme.md update

* Updates to timers, and some stm32 boards definitiions

* Correct pin toggle macro.

* Remove duplicated Malyan M200 entry from pins.h

* Update configuration_store.cpp

* Formatting, indentation

* Formatting in HAL_Stm32f1.cpp
7 years ago
Scott Lahteine 204199e1ce Only compare XYZ to check motion 7 years ago
Scott Lahteine 6686d937fb Always report position on config load/reset 7 years ago
Scott Lahteine a4e1d83599 Fix M503 S parameter 7 years ago
Jonathan Barchi 05f8e98c4a Fix for issue #8629 - mismatch between number of stored and loaded dummy items on non-delta machines. (#8631) 7 years ago
Scott Lahteine 0154e3480c New feature: BED_SKEW_CORRECTION 7 years ago
Scott Lahteine 91fb6231b2 Fix EEPROM V45 header, layout 7 years ago
Scott Lahteine a9ecb975b2 Apply LINEAR_UNIT to M503 output for M200 8 years ago
Scott Lahteine 3bba7d60f3 No retroactive changes with M851 Z
If using babystep to adjust the Z probe offset, the axis will move and the mesh will be updated at the same time, causing a doubling of the Z offset over the rest of the print.

To correct for this, the current Z position would need to be modified in the opposite direction, canceling out the additional Z offset added to the mesh. This would be confusing to users, and moreover it would not be accurate without also taking the current Z fade level and current Z height into account.

It might make sense to change the mesh in the case where no babystepping is taking place, but this could be considered an undesirable side-effect of changing the `zprobe_zoffset`.

One way to remedy this would be to return to storing the mesh with `zprobe_zoffset` included, then subtracting `zprobe_zoffset` from the returned Z value. Thus, a babystep moving the Z axis up 1mm would subtract 1 from `zprobe_zoffset` while adding 1 to all mesh Z values.

Without including the `zprobe_zoffset` in the `z_values` there is no safe way to alter the mesh in conjunction with babystepping, although it's fine without it.
8 years ago
Scott Lahteine 63257dc083 Fix M503 output for M145
Fixes #7978
8 years ago
Scott Lahteine 36426af564
Merge pull request #8356 from tcm0116/2.0.x-M600
[2.0.x] Normalize load/unload length in M600
8 years ago
LVD-AC e334efb2a7 PROBE_MANUALLY etc. 8 years ago
Scott Lahteine cba9c1cf9e Add pre-calculated planner.e_factor 8 years ago
Thomas Moore f34c3597dc Add delta_height variable in lieu of using home_offset 8 years ago