Commit Graph

128 Commits

Author SHA1 Message Date
David Ramiro 425e10c29a
Fix stuttering issues on detailed models
- Optimize TFT code for state handling (pause, runout, ...)
- Remove multiple state booleans in favour of a single integer
- Remove obsolete filament runout code
- Increase jerk/accel
- Decrease TX buffer size
- Revert minimum segment time to factory default
2019-04-03 15:48:11 +02:00
David Ramiro b18052c0c3
Revert frequency changes
Needs more investigation. Suspended for now.
2019-04-03 15:12:29 +02:00
David Ramiro 2b4c936c1a
Add config option for new board revision 2019-04-01 21:24:06 +02:00
David Ramiro 1bd23dfbd8
Tweak PID autotune
- Add beep on autotune completion
- Raise cycle count on hotend PID tune via TFT from 6 to 15
2019-03-31 18:36:25 +02:00
David Ramiro b8d783b146
Increase buffer size
By default, more than 2K of SRAM are available. Using some of that to increase a few buffer sizes.
2019-03-31 18:10:45 +02:00
David Ramiro 7e29a4d88a
Merge upstream
Merging upstream changes up to 35775395d9b5206e584b3734ab7e070e072603f8
2019-03-30 14:14:39 +01:00
David Ramiro a9274af234
Merge branch 'master' into dev 2019-03-28 12:06:02 +01:00
David Ramiro 625e264dfc
Fix for Travis CI and adjust tests 2019-03-28 11:12:57 +01:00
David Ramiro 6deb88102b
Add optional endstop beeps
Enable ENDSTOP_BEEP in Configuration.h to enable a 2KHz beep when endstops are hit. Disabled by default.
2019-03-28 00:59:25 +01:00
David Ramiro 3f19385e03
Add unretraction parameter to G26
G26 Gcode:
- Change Q parameter to only specify retraction length
- Add Z parameter for unretraction length
- Preserve fixed multiplier of 1.2 if Z isn't specified
- Add check to avoid implausible retract/unretract ratios
- Change default config values

Referencing #31. Thanks to @BlackMulch for the feedback!
2019-03-28 00:59:25 +01:00
David Ramiro 589e972102
Raise PWM frequency
Adjusting PWM frequencies to better match FDD8780, WSK220N04 and VS40200ATD MOSFET spec.

- Heater PWM frequency increased from 7.6294 Hz to 30.5176 Hz
– Referencing the Forward Bias Safe Area from the MOSFET's datasheets, this value should be safer.
- Use software PWM for fans to reduce whine
– The higher PWM frequency works well with the stock parts cooling fan and might allow for better control of third party fans
2019-03-28 00:57:09 +01:00
David Ramiro a2c47b53c2
Add optional endstop beeps
Enable ENDSTOP_BEEP in Configuration.h to enable a 2KHz beep when endstops are hit. Disabled by default.
2019-03-25 19:15:28 +01:00
David Ramiro 9c133f5c05
Add unretraction parameter to G26
G26 Gcode:
- Change Q parameter to only specify retraction length
- Add Z parameter for unretraction length
- Preserve fixed multiplier of 1.2 if Z isn't specified
- Add check to avoid implausible retract/unretract ratios
- Change default config values

Referencing #31. Thanks to @BlackMulch for the feedback!
2019-03-24 21:20:54 +01:00
David Ramiro fd8f28257f
Raise PWM frequency
Adjusting PWM frequencies to better match FDD8780 MOSFET spec.

- Hotend PWM frequency increased from 488.28 Hz to 1953.12 Hz
– Referencing the Forward Bias Safe Area from the hotend MOSFET's datasheet, this value should be safer.
- Hotbed PWM frequency increased from 7.26Hz to 30.48Hz
- Use software PWM for fans to reduce whine
– The higher PWM frequency works well with the stock parts cooling fan and might allow for better control of third party fans
2019-03-24 18:30:53 +01:00
David Ramiro bf8b6729b2
Add optional startup chime
Enable STARTUP_CHIME in Configuration.h to play a short chime on Trigorilla startup/serial connection, disabled by default
2019-03-24 16:57:31 +01:00
David Ramiro 79f559e9af
Implement heatbed cooldown routine
- M888: Cooldown routine for the Anycubic Ultrabase (EXPERIMENTAL):
This is meant to be placed at the end Gcode of your slicer. It hovers over the print bed and does circular movements while running the fan. Works best with custom fan ducts.
- T<int>: Target bed temperature (min 15°C), 30°C if not specified
- S<int>: Fan speed between 0 and 255, full speed if not specified

Thanks to @kulfuerst for the suggestion!
2019-03-13 11:40:25 +01:00
David Ramiro c1c2743452
Rework pause, filament runout & abort
- Park head with retract on pause and abort
- Use native functions instead of Gcode
- Loud beeps to alert user on runout
- Fix potential looping issues by using flags
- Fix "Stop failed" message on some occasions
2019-03-12 16:23:29 +01:00
David Ramiro ee6094f39d
Cleanup
Improving and adding some comments to the code, updating a few details on the readme
2019-03-10 22:40:35 +01:00
David Ramiro 1a5804f260
Implement nozzle reheating on timeout via display
- Raise nozzle timeout to 10 minutes
- Use continue button as reheat trigger
- Manage nozzle_timed_out variable via display
- Add PausedByNozzleTimeout flag to enter correct routine on display
- Bump version to 1.4.3
2019-03-08 16:30:56 +01:00
David Ramiro cea54723e7
Use realtime on filament sensor
Instead of incrementing a variable on every iteration on the filament sensor trigger loop, we now use a real time macro that ensure better repeatability and is easier to customize.
2019-03-08 16:05:54 +01:00
David Ramiro 90e27ff21b
Fix indentation
Improve readability and fix #ifdef and #endif indentations
2019-03-08 01:25:21 +01:00
David Ramiro 85c32a2bb6
Fix Z movement on abort
- Referencing #29
- Adding audio feedback to special menu M500 and M502
2019-03-06 22:59:46 +01:00
David Ramiro 2c53c33d52
Tweak M600 display resume
- Add startFileprint(); call to M108 display routine to fix progress and ensure "printing done" gets shown
- Add SD printing check in marlin_main.cpp M600 routine to skip TFTstate if not necessary (e.g. USB printing)
- Move routine to the top again to ensure immediate execution
2019-02-24 15:48:03 +01:00
David Ramiro 8fc01144f1
Set SDPAUSE state on M600 regardless of prior TFTstate
Move the routine to a better position and set the state regardless of SDPRINT status.

This ensures that M600 makes the display show a continue button every time. Before, it was only behaving correctly for the first instance of M600.
2019-02-23 11:16:29 +01:00
David Ramiro 8448c67846
Streamline build identification 2019-02-23 00:31:25 +01:00
David Ramiro e822d53f2f
Merge branch 'master' into dev 2019-02-23 00:26:33 +01:00
David Ramiro 30bbf59cb0
Increase filament rounout trigger delay
In some cases, the filament runout was triggered erratically, we are now waiting for the trigger to last a few moments until we start the routine.
2019-02-22 22:26:58 +01:00
David Ramiro 0f5745e281
Update README.md 2019-02-21 10:30:21 +01:00
David Ramiro d6f2b7dcf2
Update README.md 2019-02-19 19:15:28 +01:00
David Ramiro b25aa626e7
Update semantic versioning 2019-02-18 20:01:22 +01:00
David Ramiro afcdb69cee
Merge branch 'dev' 2019-02-18 19:35:21 +01:00
David Ramiro b447245ddd
Add screen state to gcode_M600()
- Allowing resume after M600 via on screen button:

- Adding check for TFT state status
- Setting flag when print was started via TFT
2019-02-18 19:34:59 +01:00
David Ramiro 078678d434
Merge branch 'dev' 2019-02-18 19:07:34 +01:00
David Ramiro b164d593cb
Update README.md 2019-02-18 19:07:17 +01:00
David Ramiro 2bd6f2f23a
Pause & runout code cleanup
Final changes to pause & filament runout overhaul before release:
- Use booleans instead of chars for cleaner code
- Raised retraction amount
2019-02-18 18:05:37 +01:00
David Ramiro 16d6d37096
Disable TFT debug 2019-02-17 19:57:07 +01:00
David Ramiro 5fbc1b6035
Tweak pause & filament runout
- Check for PausedByFilamentChange flag on pause and resume
- Move stop movements from StateHandler() to StopPrint()
- Retract 1mm on pause (2mm on runout) without feed on resume, preventing ooze
- Fix special menu margin on some buttons
2019-02-16 18:41:22 +01:00
David Ramiro 76b873baee
Add M600 and M108 routines to display code 2019-02-15 22:58:42 +01:00
David Ramiro 1fe1842a75
Rework filament runout, pause and stop
Editing display pausing/stopping and using nozzle parking for filament runout
2019-02-15 20:26:54 +01:00
David Ramiro bfe39a342d
Fix buffer issue with S3D USB printing 2019-02-11 22:53:09 +01:00
David Ramiro 28e86b95ed
Adjust temperature limits and margins
Lowering the safety margin of MAXTEMP to 10°C and raising MAXTEMP to 285/135.

Resulting in a limit of 275°C for the hotend and 125°C for the heatbed.

Referencing #23
2019-02-11 14:16:30 +01:00
David Ramiro 94c99ff406
Update issue templates 2019-02-10 16:05:26 +01:00
David Ramiro d3209886ed
Move sections to the wiki 2019-02-10 15:14:12 +01:00
David Ramiro bb06621c6c
Tweak feedrate, jerk and acceleration 2019-02-08 16:30:41 +01:00
David Ramiro f01026e748
Tweak minimum segment time
Improve USB printing by slowing down on certain situations. This prevents the buffer from running empty and removes the need to wait for new serial commands.
2019-02-08 16:28:02 +01:00
David Ramiro 06424642ba
Merge branch 'm600' 2019-02-06 19:33:25 +01:00
David Ramiro a57103fb29
Update S3D profile 2019-02-06 18:18:26 +01:00
David Ramiro 9281686c49
Tweak M600 filament change
Adjust load and unload distances to suit the bowden tube and append instructions
2019-02-06 18:10:39 +01:00
David Ramiro 01e152b456
Bugfix
- Buffer flush added to the the end of M190 loop
- Inverted position polling when canceling print via display
2019-02-06 12:32:58 +01:00
David Ramiro 42f52d34b4
Flush serial buffer after heating
Some hosts like Pronterface use continuous M105 commands to poll temperature, this causes a software halt when the heating via M109 or M190 is finished. Flushing the rx buffer fixes this.

As reported in #15, thanks to @rug156 for the feedback!
2019-02-06 11:42:24 +01:00