Commit graph

4586 commits

Author SHA1 Message Date
Scott Lahteine
928ff6487a Greek language pack from @psavva 2016-07-10 18:59:04 -07:00
AnHardt
e92e58df1f Adjust wait_for_cooling slope
Adjust wait_for_cooling slope
and drop mintemp for cooling.

See
https://github.com/MarlinFirmware/Marlin/pull/4169#issuecomment-231544532
2016-07-11 03:36:23 +02:00
Scott Lahteine
167f4aa0cc Merge pull request #4259 from clexpert/patch-3
Update language_cz.h
2016-07-10 18:26:23 -07:00
Scott Lahteine
8dda05e92a Merge pull request #4258 from clexpert/patch-2
Total print time for LCD correction (hours:minutes format)
2016-07-10 18:25:18 -07:00
Scott Lahteine
182c8d7f8f Dyze High Temp Thermistor Support 2016-07-10 17:59:05 -07:00
Scott Lahteine
5b0e46c986 Merge pull request #4256 from thinkyhead/rc_fix_singlenozzle_temp
Additional tweaks for HOTENDS == 1
2016-07-10 17:57:00 -07:00
Scott Lahteine
ee0983ab57 Further reduction when HOTENDS == 1 2016-07-10 16:54:30 -07:00
Scott Lahteine
3e1bbd5e27 Indentation in gcode_M100 2016-07-10 16:33:51 -07:00
Scott Lahteine
b72238f406 Invariant get_pid_output with HOTENDS < 2 2016-07-10 16:33:51 -07:00
Petr Zahradnik
66602f4af6 Update language_cz.h
New strings:
#define MSG_HALTED
#define MSG_PLEASE_RESET
Some texts shortened for smaller displays.
2016-07-10 13:25:50 +02:00
Petr Zahradnik
eaf9e615ce Total print time for LCD correction (hours:minutes format) 2016-07-10 13:08:05 +02:00
esenapaj
9e56d5825e Adjust spacing 2016-07-10 14:25:29 +09:00
esenapaj
5832f4b848 Follow-up the PR #4253 (Runout Sensor without SD Card, Print Timer support in M104)
・Update forgotten example configuration files
2016-07-10 14:24:57 +09:00
Scott Lahteine
77283f5bf0 Merge pull request #4245 from thinkyhead/rc_simpler_therm_check
Simpler/extensible thermistor test in thermistortables.h
2016-07-09 21:13:42 -07:00
Scott Lahteine
f9e08b1fcd Merge pull request #4254 from AnHardt/killscreen
Add a kill-screen
2016-07-09 20:44:42 -07:00
AnHardt
faac2bcfdb Add a kill-screen 2016-07-10 04:50:45 +02:00
Scott Lahteine
3b3e52616c Merge pull request #4253 from thinkyhead/rc_clexpert_runout
Runout Sensor without SD Card, Print Timer support in M104
2016-07-09 19:10:36 -07:00
Scott Lahteine
aa3ab93971 Merge pull request #4240 from AnHardt/sampler-8-7-16
Today's fix and cleanup collection
2016-07-09 19:09:45 -07:00
Scott Lahteine
4cd045791c Reduce code size by trusting the compiler 2016-07-09 18:17:44 -07:00
Scott Lahteine
a8538bd7ce General cleanup, code reduction in Marlin_main.cpp 2016-07-09 18:17:44 -07:00
Scott Lahteine
1026e5b071 Replace PLA/ABS preheating with generic 2016-07-09 18:06:51 -07:00
Petr Zahradnik
e282d69f63 Print job timer comment changed 2016-07-09 17:57:54 -07:00
Petr Zahradnik
a2159cfbc3 Error message change in SanityCheck.h 2016-07-09 17:57:54 -07:00
Petr Zahradník junior
315b4c2153 Runout sensor without SD Card 2016-07-09 17:57:53 -07:00
Scott Lahteine
51c9c3fe2c Indentation in MarlinSerial.cpp 2016-07-09 17:57:53 -07:00
Scott Lahteine
e03414b2dd Simpler/extensible thermistor test in thermistortables.h 2016-07-08 19:54:45 -07:00
AnHardt
4b44a23a36 Add TX-buffer for MarlinSerial
Similar to the current Arduino HardwareSerial
but with max. 256 byte buffer-size.

Deactivated by default.

The boards with AT90USB processor (USBCON) already use a TX-buffer.
2016-07-08 17:25:21 +02:00
AnHardt
468f7f03a2 homeaxis() can leave early
when no known axis needs to be homed.

Most changes are only caused from altering the indentation.
```
if (axis == X_AXIS ? HOMEAXIS_DO(X) : axis == Y_AXIS ? HOMEAXIS_DO(Y) : axis == Z_AXIS ? HOMEAXIS_DO(Z) : 0) {
  ...
}

to

if (!(axis == X_AXIS ? HOMEAXIS_DO(X) : axis == Y_AXIS ? HOMEAXIS_DO(Y) : axis == Z_AXIS ? HOMEAXIS_DO(Z) : 0)) return;
...

```
2016-07-08 15:59:33 +02:00
AnHardt
eff7912243 Ensble/disable hardware endstops in G28 globally.
For moving away from the endstops we do not have to disable them.
They are not tested anyway.
2016-07-08 15:49:10 +02:00
AnHardt
f69434d81c Eliminate void setup_for_endstop_move() 2016-07-08 15:23:20 +02:00
AnHardt
0ea6247fc2 Use logic in Z_SAFE_HOMING
Use logic in Z_SAFE_HOMING

From
```
if (home_all_axis || homeZ) {
  if (home_all_axis) {
  ...
  home z
  }
  else if (homeZ) { // Don't need to Home Z twice
  home z
  }
}

```
to
```
if (home_all_axis || homeZ) {
  if (home_all_axis) {
  ...
  }
  home z
}
```
2016-07-08 15:08:50 +02:00
AnHardt
de3a169336 Always define MIN_Z_HEIGHT_FOR_HOMING even if 0
Always define MIN_Z_HEIGHT_FOR_HOMING even if 0
Always make a potential rise to `home_offset[Z_AXIS]` possible in G28.
Get rid of some very ugly constructs in MBL (ultralcd.cpp).
2016-07-08 15:08:32 +02:00
AnHardt
88ed232f53 Remove HAS_BED_PROBE case in first raise in G28
Differentiating made sense here when we could save a dozen lines of code,
but not for one line.
2016-07-08 14:59:44 +02:00
AnHardt
653eff3b31 Clean up quick_home_xy()
Since we do the actual homing now in the 'normal' routines `quick_home_xy()`
can be simplified to a relative simple diagonal move.
2016-07-08 14:59:27 +02:00
Scott Lahteine
98d0167a57 Merge pull request #4226 from thinkyhead/rc_emergency_command_parser
MarlinSerial emergency-command parser (with M108)
2016-07-07 16:53:55 -07:00
Scott Lahteine
2ee4e4f791 Make wait_for_heatup volatile 2016-07-07 16:37:23 -07:00
Scott Lahteine
bd5a825b8b Wait for end of line before invoking action 2016-07-07 16:37:23 -07:00
Scott Lahteine
ea47803ae2 Simplify emergency parser (only parse initial command) 2016-07-07 16:37:22 -07:00
Scott Lahteine
834ad14c8d Add quickstop_stepper to update current position with stepper.quick_stop() 2016-07-07 16:37:22 -07:00
Scott Lahteine
ecffe92e20 Group EMERGENCY_PARSER commands 2016-07-07 16:37:22 -07:00
AnHardt
a129078927 Add an emergency-command parser to MarlinSerial (supporting M108)
Add an emergency-command parser to MarlinSerial's RX interrupt.

The parser tries to find and execute M108,M112,M410 before the commands disappear in the RX-buffer.

To avoid false positives for M117, comments and commands followed by filenames (M23, M28, M30, M32, M33) are filtered.

This enables Marlin to receive and react on the Emergency command at all times - regardless of whether the buffers are full or not. It remains to convince hosts to send the commands. To inform the hosts about the new feature a new entry in the M115-report was made. "`EMERGENCY_CODES:M112,M108,M410;`".

The parser is fast. It only ever needs two switch decisions and one assignment of the new state for every character.

One problem remains. If the host has sent an incomplete line before sending an emergency command the emergency command could be omitted when the parser is in `state_IGNORE`.
In that case the host should send "\ncommand\n"

Also introduces M108 to break the waiting for the heaters in M109, M190 and M303.

Rename `cancel_heatup` to `wait_for_heatup` to better see the purpose.
2016-07-07 16:37:22 -07:00
Scott Lahteine
9f42b1a075 Merge pull request #4235 from thinkyhead/rc_revert_quickhome_test
Fix quick homing, tweak MIN_Z_HEIGHT_FOR_HOMING
2016-07-07 13:37:14 -07:00
Scott Lahteine
ad968f2325 Merge pull request #4234 from thinkyhead/rc_better_position_logging
Move XYZ in print_xyz and DEBUG_POS to the front
2016-07-07 12:31:15 -07:00
Scott Lahteine
4036c73cdd Don't raise Z if only homing Z 2016-07-07 12:28:37 -07:00
Scott Lahteine
0b6f8f8244 Apply MIN_Z_HEIGHT_FOR_HOMING raise literally 2016-07-07 12:25:02 -07:00
Scott Lahteine
177ec20bf0 Revert quick-home changes 2016-07-07 12:17:34 -07:00
Scott Lahteine
9c5b462ef2 Move XYZ in print_xyz and DEBUG_POS to the front 2016-07-07 11:42:19 -07:00
Scott Lahteine
4e84c803a3 Merge pull request #4232 from thinkyhead/rc_no_axis_codes_needed
Don't use axis_codes if a literal will do
2016-07-06 20:05:16 -07:00
Scott Lahteine
e2f7cb0905 Don't use axis_codes if a literal will do 2016-07-06 18:37:21 -07:00
Scott Lahteine
6559f7359f Fix comment on Z raise for homing, save a few bytes 2016-07-06 16:21:51 -07:00
Scott Lahteine
799c60cadc Merge pull request #4217 from thinkyhead/rc_fix_homing_raise
Don't do_probe_raise with MIN_Z_HEIGHT_FOR_HOMING
2016-07-06 14:39:37 -07:00
Scott Lahteine
d7e9647505 Sanity Check for probe raises 2016-07-06 13:46:06 -07:00
Scott Lahteine
d0b29cabf3 Don't re-home X and Y if you quick homed 2016-07-06 13:46:06 -07:00
Scott Lahteine
e0a6b978f5 Don't do_probe_raise with MIN_Z_HEIGHT_FOR_HOMING 2016-07-06 13:46:05 -07:00
Philip Schell
cf8ec1216a Update language_de.h for German translation
@MarlinFirmware/language-team my changes for the German language. Feel free to improve :)
2016-07-06 21:44:16 +02:00
petrzjunior
b81b77111b Update language_cz.h 2016-07-06 21:04:34 +02:00
Scott Lahteine
7735ec5e7a Merge pull request #4223 from thinkyhead/rc_rename_heatup
Change cancel_heatup to wait_for_heatup
2016-07-06 11:25:44 -07:00
Scott Lahteine
160a2be117 Change cancel_heatup to wait_for_heatup 2016-07-06 09:17:50 -07:00
AnHardt
16c83d203b Make use of the good features of a sled probe for all probes.
Move and extend axis_unhomed test to deploy/stow_z_probe().
Move and extend position store/restore to deploy/stow_z_probe().

Now all kinds of probes can use the 'E' parameter in G29/M48.
Allen key probes can be used now for grid and 3-point levelling.

Deploying the Allen Key probe uses big moves in z direction.
Too dangerous for an unhomed z-axis.
Throw a compile time error when we try to configure an
Allen Key probe homing to z-min and having no other z-min-endstop.
2016-07-06 04:11:04 +02:00
AnHardt
8555816a11 Generalize and simplify 'triggered when stowed test`
The `PROBE_IS_TRIGGERED_WHEN_STOWED_TEST` is able to detect if a probe is
successfully deployed/stowed.
It was part of the Allen Key probes code only.
Now the function is generally available.

Currently this test is compulsory for Allen Key probes to not alter the used behaviour
If you want to add the test for an other type of probe simply add
```
#define PROBE_IS_TRIGGERED_WHEN_STOWED_TEST
```
to your config.
2016-07-06 03:56:17 +02:00
AnHardt
5126cce7fd Move Allen Key probe move scripts to their own functions
There was an hidden extra move after the scripts. This is configurable now.
Added the extra moves to the relevant configs.
2016-07-06 03:46:40 +02:00
AnHardt
7d063c111c Add a optional feedrate parameter to do_blocking_move()
Add a optional feedrate parameter to `do_blocking_move()` and its companions.
2016-07-06 03:46:34 +02:00
Scott Lahteine
b114b6a0b3 Save 152 bytes using uint8_t for command indices 2016-07-05 16:29:28 -07:00
Scott Lahteine
0d4ff0c48b Allow the queue to be cleared from within commands 2016-07-05 16:25:20 -07:00
Scott Lahteine
c450851401 Merge pull request #4209 from AnHardt/too-high-G28
Make raise for probe deploy relative in homeaxis()
2016-07-05 11:07:42 -07:00
AnHardt
f799f18388 MBL typo 2016-07-05 18:19:53 +02:00
AnHardt
8b02e68cb6 Make raise for probe deploy relative in homeaxis()
Make raise for probe deploy relative in homeaxis()
by setting `current_position[axis]` to zero later.
2016-07-05 10:42:33 +02:00
Scott Lahteine
e48502866b Merge pull request #3611 from alephobjects/M108_cancel_heatup
Introduce M108 cancel wait for heatup/cooldown of the hotend and bed
2016-07-04 01:19:31 -07:00
Scott Lahteine
d70197f514 Merge pull request #4204 from thinkyhead/rc_fix_gcode_t_position
Additional patches for gcode_T position change
2016-07-04 01:16:22 -07:00
Scott Lahteine
869b517589 Merge pull request #4205 from thinkyhead/rc_fixup_unit_references
References to millimeters in code comments need an update
2016-07-04 01:15:34 -07:00
Scott Lahteine
e104b91ea6 References to millimeters in code comments need an update 2016-07-03 20:13:29 -07:00
AnHardt
ff91d28a3a Remove wants_to_cool warning
Remove wants_to_cool warning
2016-07-04 03:12:11 +02:00
Scott Lahteine
c9e536cf87 Additional patches for gcode_T position change 2016-07-03 18:11:02 -07:00
Scott Lahteine
60865fc45b Merge pull request #4202 from thinkyhead/rc_fix_gcode_t_position
Fix position adjustment with gcode_T and MBL
2016-07-03 17:55:43 -07:00
Scott Lahteine
f841038313 Merge pull request #4201 from thinkyhead/rc_info_fit
Shorter labels for Print Stats info
2016-07-03 17:47:00 -07:00
Scott Lahteine
f31af61ee2 Fix position adjustment with gcode_T and MBL 2016-07-03 17:44:04 -07:00
Scott Lahteine
a8f5c2bf96 Merge pull request #4192 from birkett/k8400
Add Velleman K8400 board support.
2016-07-03 17:41:13 -07:00
Scott Lahteine
ef8980bfa0 Shorter labels for Print Stats info 2016-07-03 16:00:24 -07:00
Scott Lahteine
2ed625dafa Fix compiler warnings for static screens 2016-07-03 15:26:17 -07:00
Anthony Birkett
e77844594d readme.md -> README.md 2016-07-03 22:15:24 +01:00
Anthony Birkett
a0b00d29e3 Add a ported example configuration for the Velleman K8400 (Vertex) printer.
Supports both dual and single head printers (with the correct config).
Includes community sourced feed rate fix.

Rename / move files.

Remove redundant definitions.
2016-07-03 22:09:08 +01:00
lrpirlet
9b42c6b44b apply correction when swtiching from MBL to physical in G28 X 2016-07-03 21:43:42 +02:00
esenapaj
95347fc650 Follow-up the PR #3662 (Rewritten FILAMENT_CHANGE_ENABLE feature)
・Update a forgotten Configuration_adv.h of Cartesio
2016-07-03 09:04:29 +09:00
Scott Lahteine
a06c5165a7 Shorter strings for smaller LCDs 2016-07-02 15:47:16 -07:00
Scott Lahteine
982f10e6a0 Use STATIC_ITEM for LCD message display 2016-07-02 15:47:15 -07:00
Petr Zahradnik
43ff0ce35f Rewritten FILAMENT_CHANGE_ENABLE feature 2016-07-02 15:34:33 -07:00
Scott Lahteine
51b7820686 Patch up About Printer sub-menus 2016-07-02 15:22:34 -07:00
Scott Lahteine
439e78147d Static menu items take an optional string, LJ by default 2016-07-02 15:22:34 -07:00
Scott Lahteine
fa9b2a925d Tweak spacing in printcounter.cpp 2016-07-02 15:22:33 -07:00
Scott Lahteine
dbfc87cdcf Squish sanity check for build info 2016-07-02 15:22:33 -07:00
Anthony Birkett
7a377c1d75 Add "About Printer" information menu.
Includes:
  *firmware version / branch / date.
  *extruder count
  *board information (name, serial details, power supply type)
  *thermistors (names, min/max temperatures)
  *printer statistics (PRINTCOUNTER details)

Thanks to @thinkyhead for contributions.
2016-07-02 15:22:26 -07:00
Scott Lahteine
77a923d8ce Merge pull request #4186 from thinkyhead/rc_array_macros
Simplified variable-size array macros
2016-07-01 20:48:12 -07:00
Scott Lahteine
e650a75b88 Simplified variable-size array macros 2016-07-01 20:36:05 -07:00
Scott Lahteine
ac4f235912 Merge pull request #4167 from thinkyhead/rc_eeprom_checksum
EEPROM Checksum
2016-07-01 19:22:49 -07:00
esenapaj
03b8f88092 Tab to Space 2016-07-02 08:07:33 +09:00
AnHardt
cb1b31f69b Unconditional do_probe_raise() in probe_pt()
If Z_RAISE_BETWEEN_PROBINGS is null or undefined the probe is currently not raised by home_offset[Z_AXIS] and zprobe_zoffset.
But when different from 0 is.

If an undefined Z_RAISE_BETWEEN_PROBINGS expands to 0 (and it does) this is the solution.


A similar asymmetry exists with the newly introduced 'short-cut' in G28 - but its the rise before anything is probed - so should not make a difference.
2016-07-01 15:28:41 +02:00
Scott Lahteine
7ef7843fd4 Merge pull request #4181 from thinkyhead/rc_rename_a_move_func
Do interpolated moves for Allen Key deploy/stow
2016-06-30 16:30:09 -07:00
Scott Lahteine
6b2a7b30af Extra comments to clarify EEPROM code 2016-06-30 16:28:01 -07:00
Scott Lahteine
787f394676 MAX_EXTRUDERS replaces mysterious "4" 2016-06-30 16:27:37 -07:00
Scott Lahteine
bc3748b7bc Add shared Config_Postprocess for Read and Reset 2016-06-30 16:25:29 -07:00
Scott Lahteine
adcd0f5de3 Some formatting in configuration_store.cpp 2016-06-30 16:25:29 -07:00
Scott Lahteine
5e370006fc EEPROM Checksum 2016-06-30 16:20:25 -07:00
Scott Lahteine
725fde8b26 Merge pull request #4169 from thinkyhead/rc_wait_but_break
Allow wait-for-cooling, break at threshold or if cooling stalls
2016-06-30 16:13:51 -07:00
Scott Lahteine
da6b0dab5f Use prepare_move_to_destination for Allen Key deploy/stow 2016-06-30 16:09:43 -07:00
Scott Lahteine
c42f8fb8dd Rename some movement sub-functions 2016-06-30 15:50:00 -07:00
Scott Lahteine
b6b3a4afbf Merge pull request #4168 from thinkyhead/rc_viki2_for_ramps
Support for VIKI2 in RAMPS and derivatives
2016-06-30 01:48:50 -07:00
Scott Lahteine
f84d85f761 Cleanup extruder runout configs 2016-06-30 01:40:41 -07:00
Scott Lahteine
5e14a528dd Always wait for cooling in M109/M190, break at low temp or if cooling stalls 2016-06-29 14:07:54 -07:00
Scott Lahteine
0b0b7aac6e Support for VIKI2 in RAMPS and derivatives 2016-06-28 18:19:18 -07:00
Scott Lahteine
abda4ab427 Clean up CNControls pins 2016-06-28 16:56:48 -07:00
Scott Lahteine
683975cf90 Fix spelling in a config comment 2016-06-28 16:49:13 -07:00
Scott Lahteine
8268c0a9a0 Always define temp sensor, heater pins for RUMBA 2016-06-28 16:28:05 -07:00
Scott Lahteine
db19959735 Merge pull request #4161 from thinkyhead/rc_general_cleanup
Reduce storage requirements for strings, make some PGM
2016-06-27 20:46:26 -07:00
Scott Lahteine
2e96276bf4 More debug message cleanup 2016-06-27 20:36:19 -07:00
Scott Lahteine
dc2c0e5e24 Simpler debug output for deploy/stow 2016-06-27 20:36:18 -07:00
Scott Lahteine
bd491818d6 Reduce storage requirements for strings, make some PGM 2016-06-27 20:36:18 -07:00
Scott Lahteine
ee876dcd7a Merge pull request #4159 from thinkyhead/rc_rigidbot_diff
Rigidbot V2 support - has MCP4728 digipot
2016-06-27 20:35:22 -07:00
Scott Lahteine
0c24e0e445 Support for newer Wire library 2016-06-27 20:25:03 -07:00
Scott Lahteine
ddb386c139 Init DAC_DISABLE_PIN in dac_init 2016-06-27 20:25:03 -07:00
AnHardt
e480ee0054 Further cleanup of G28 for probes 2016-06-27 20:19:51 -07:00
AnHardt
39883d03fc universalize axis_unhomed_error() 2016-06-27 20:19:51 -07:00
AnHardt
e616093d4c Simplify dock_sled()
`dock_sled()` is never called with offset parameter - remove it.
We move x only - so only that needs to be homed. Consequence is - we can home to z-min now with a sled probe!
Feedrates are set and restored in `do_blocking_move()`.
We already checked if the probe is deployed/stowed in deploy/stow_probe.
```
if (z_loc < _Z_RAISE_PROBE_DEPLOY_STOW + 5) z_loc = _Z_RAISE_PROBE_DEPLOY_STOW;
```
makes no sense - remove.
Now the raise is the same for deploy/stow -> move before the if.
Replace the if with a ternary.
Instead writing LOW/HIGH use the boolean `stow` we already have.

There is no reason for not using the sled probe in G29/M48 with 'E'.
It takes a while but works. (tested!)
2016-06-27 20:19:51 -07:00
Scott Lahteine
6c60869409 Support DAC_OR_ADDRESS in Printrboard too 2016-06-27 12:36:21 -07:00
Scott Lahteine
593c8bf286 Support for Rigidbot V2 2016-06-27 12:35:20 -07:00
Scott Lahteine
511503ede9 CARTESIO_UI has lcd contrast 2016-06-27 12:04:49 -07:00
Scott Lahteine
829c92f1ba Use Z_RAISE_BETWEEN_PROBINGS with MBL 2016-06-26 15:39:11 -07:00
Scott Lahteine
eb1755208f Merge pull request #4153 from thinkyhead/rc_probe_raise_options
Combine Z raise before/after options
2016-06-26 15:30:08 -07:00
Scott Lahteine
10da7ac86c Combine Z raise before/after options 2016-06-26 13:56:30 -07:00
Scott Lahteine
9caa8941e2 Merge pull request #4149 from thinkyhead/rc_minimum_raise_in_probe_pt
Ensure a minimum height before XY move in probe_pt
2016-06-25 19:35:58 -07:00
Scott Lahteine
3fa631130f Ensure a minimum height before XY move in probe_pt 2016-06-25 19:19:31 -07:00
Scott Lahteine
a7684eef7a Squish code in ST7920 2016-06-25 18:35:15 -07:00
AnHardt
b4076883cc Set testet delays for K8200, RAMBO, MINIRAMBO and ST7920 2016-06-25 18:35:15 -07:00
AnHardt
4454d80276 Decrease the needed nops to 1
by shitfing the left shift into the high phase.

```
2	cbi 0x2,1 ;set CLK                      //
1	in r18,__SREG__                         //1
1-3	sbrc r24,7                              //2-4
2	rjmp .L19                               //4
1	cli                  .L19:              //5
2	lds r25,258          lds r25,258        //7
1	andi r25,lo8(-2)     ori r25,lo8(1)     //8
2	sts 258,r25          sts 258,r25        //10
1	out __SREG__,r18     out __SREG__,r18   //11
2	.L3:                 rjmp .L3           //13     //2
2	sbi 0x2,1 ;reset CLK //                 //13-15  //2-4
1	lsl r24	 ;  val      //1
1	nop                  //2
2	cbi 0x2,1 ;set CLK   //4
...
```
2016-06-25 18:35:15 -07:00
AnHardt
56c42b572c 3 ms speedup for ST7920 and delay for BOARD_3DRAG
and saving ~1k memory
by limiting the `#pragma GCC optimize (3)` optimisation to `ultralcd_st7920_u8glib_rrd.h`. These optimisation was and is not done for all the other displays, is the reason for the big additionally use of memory, because the complete 'ultralcd.cpp' and 'dogm_lcd_implementation.h' was optimised (sadly i did not observe a change in speed).

Unrolling the loop in `ST7920_SWSPI_SND_8BIT()`, what i expected the optimiser to do, by hand, saved some speed by eliminating the loop variable (i) compares and increases. Every CPU cycle in this loop costs at least 0.5ms per display update because it's executed more than 1k times/s.

The delays are now pre-filled with the calculated values for 4.5V driven ST7920.
A way to simply add __your__ timing into the configuration was made.

At 4.5V
1.) The CLK signal needs to be at least 200ns high and 200ns low.
2.) The DAT pin needs to be set at least 40ns before CLK goes high and must stay at this value until 40ns after CLK went high.

A nop takes one processor cycle.
For 16MHz one nop lasts 62.5ns.
For 20MHz one not lasts 50ns.

To fulfill condition 1.) we need 200/62.5 = 3.2 => 4 cycles (200/50 = 4 => 4). For the low phase, setting the pin takes much longer. For the high phase we (theoretically) have to throw in 2 nops, because changing the CLK takes only 2 cycles.

Condition 2.) is always fulfilled because the processor needs two cycles (100 - 125ns) for switching the CLK pin.


Needs tests and feedback.
Especially i cant test 20MHz, 3DRAG and displays supplied wit less than 5V.
Are the delays right? Please experiment with longer or shorter delays. And give feedback.

Already tested are 5 displays with 4.9V - 5.1V at 16MHz where no delays are needed.
2016-06-25 18:35:15 -07:00
Scott Lahteine
ca184d3d72 Merge pull request #4147 from thinkyhead/rc_fix_M48_raise
Fix debug output in probe_pt
2016-06-25 18:15:33 -07:00
Scott Lahteine
b4161cbd98 Fix debug output in probe_pt 2016-06-25 17:59:03 -07:00
Edward Patel
da88b00585 MBL: Add support for max z endstop
See https://github.com/MarlinFirmware/Marlin/issues/4088
2016-06-25 21:58:02 +02:00
Scott Lahteine
74878d1f16 Always do a brief delay in lcd_quick_feedback 2016-06-24 14:46:10 -07:00
Scott Lahteine
7de7552069 Merge pull request #4133 from MagoKimbra/Single_home_axis_delta
Single home Axis Delta need simple sync_plan_position
2016-06-23 21:14:22 -07:00
Scott Lahteine
15a6b49f37 Simplified probe_pt (in G30) 2016-06-23 20:25:46 -07:00
Scott Lahteine
6a7045b9bf Remove clean_up_after_endstop_move 2016-06-23 20:23:19 -07:00
Scott Lahteine
2a4f866561 Simplified probe_pt (in G29) 2016-06-23 20:22:28 -07:00
Scott Lahteine
89a2aa026b Simplified probe_pt (in M48) 2016-06-23 19:22:45 -07:00
Scott Lahteine
f8530c5d1f Simplified probe_pt function (G28 grid) 2016-06-23 19:09:32 -07:00
Scott Lahteine
c376c08042 Simplified probe_pt function (part 1) 2016-06-23 19:00:29 -07:00
Scott Lahteine
9a71b7f8ad Fix debug message for 3-point leveling 2016-06-23 18:17:31 -07:00
Scott Lahteine
550c03a5a9 Drop raise_z_after_probing function 2016-06-23 18:11:54 -07:00
Scott Lahteine
bb38c816af Always raise in deploy_z_probe / stow_z_probe 2016-06-23 18:00:20 -07:00
Scott Lahteine
68f3350050 Cleanup M401 / M402 2016-06-23 17:04:41 -07:00
Scott Lahteine
3afda99adf Regular handlers for G31 / G32 2016-06-23 17:04:13 -07:00
Scott Lahteine
6803c8e37e Move Z up before, or down after XY, for "blocking move" 2016-06-23 15:50:13 -07:00
Scott Lahteine
03c70c1990 SERVO_DEACTIVATION_DELAY => SERVO_DELAY 2016-06-23 14:33:29 -07:00
MagoKimbra
570f3bbc07 Single home Axis Delta need simple sync_plan_position 2016-06-23 23:09:47 +02:00
Scott Lahteine
61f34eec03 Merge pull request #4125 from jbrazio/bugfix/planner-warning
Fixes some compiler warnings
2016-06-22 19:34:37 -07:00
Scott Lahteine
bdcd628896 Merge pull request #4126 from thinkyhead/rc_lin_timing_patch
Patch LIN_ADVANCE timing issue
2016-06-22 19:24:44 -07:00
João Brázio
664232140d
Fixes somes compiler warnings 2016-06-23 03:12:55 +01:00
Sebastianv650
0c5192b288 Patch LIN_ADVANCE timing issue
Also the extruder stepper ISR has to keep an eye on step_loops count.
2016-06-22 19:05:14 -07:00
Scott Lahteine
d4134e6901 Define Z_SAFE_HOMING point when Z_PROBE_SLED is activated alone 2016-06-22 17:51:32 -07:00
Scott Lahteine
7b2fadd598 Apply some fixes from Andreas
Derived from
https://github.com/AnHardt/Marlin/commit/6e8ede8c694fa4d9e3c769840b09d56
7f8d8e0dd
2016-06-22 17:35:59 -07:00
Scott Lahteine
bd01592816 Goodbye MECHANICAL_PROBE 2016-06-22 17:13:33 -07:00
Scott Lahteine
2640d13a9f Simplify initial raise in M48 2016-06-22 16:53:04 -07:00
Scott Lahteine
3763d45656 Return Z position in run_z_probe 2016-06-22 16:52:32 -07:00
Scott Lahteine
1f48b5c30f Pass a raise to probe_pt, not a Z position 2016-06-22 16:40:21 -07:00
Scott Lahteine
6fdd5ba246 Save and restore feedrate in more places 2016-06-22 16:40:20 -07:00
Scott Lahteine
fe173c2bc6 Generalized probe raise, use for after probing 2016-06-22 14:44:30 -07:00
Scott Lahteine
7da3080761 Simpler cleanup in G28 / G29 2016-06-22 14:44:30 -07:00
Scott Lahteine
15229d988b Fix compile error for bed matrix in M48 2016-06-22 14:04:46 -07:00
Scott Lahteine
c01352cbd5 Add a dependency for z servo macros 2016-06-22 14:04:23 -07:00
Scott Lahteine
c3794bd695 Add HAS_PROBING_PROCEDURE conditional 2016-06-22 14:03:22 -07:00
Scott Lahteine
42ce60c5cc Make sure NUM_SERVOS is set for Z servo endstop 2016-06-22 14:01:19 -07:00
Scott Lahteine
b590a7dee0 Make Z_RAISE_BETWEEN_PROBINGS a more general option 2016-06-22 14:00:44 -07:00
Scott Lahteine
bb9c67b4b5 Tweak some feedrate vars 2016-06-22 03:27:31 -07:00
Scott Lahteine
5158bd6e93 Screen out G29 E for sled and allen key, allow single probe 2016-06-22 03:20:33 -07:00
Scott Lahteine
ccae92588d Cleanup debug in G28 and G29 2016-06-22 03:20:33 -07:00
Scott Lahteine
b4a9d2366c Use a macro for kinematic sync_plan_position 2016-06-22 03:20:33 -07:00
Scott Lahteine
bfccf26294 Use sync_plan_position_delta where needed 2016-06-22 03:20:33 -07:00
Scott Lahteine
a6b8c67df4 Move probe deploy after setup call in G29 2016-06-22 03:20:33 -07:00
Scott Lahteine
e69916d1bd Split up endstop_move functions 2016-06-22 03:20:33 -07:00
Scott Lahteine
0e18a4897b Simpler handling of sled/allen-key in probe_pt 2016-06-22 03:20:33 -07:00
Scott Lahteine
1a92e2ef18 Comment on run_z_probe 2016-06-22 03:20:33 -07:00
Scott Lahteine
68e0e5855e For all probes, at the end of G29 simply raise and stow 2016-06-22 03:20:33 -07:00
Scott Lahteine
c3023f8cc5 Make M401/M402 available with HAS_BED_PROBE 2016-06-22 03:20:33 -07:00
Scott Lahteine
9f0c255c69 Show uncorrected position in set_bed_level_equation_3pts 2016-06-22 03:20:33 -07:00
Scott Lahteine
07298ac992 Initialize current_position to home_offset on boot 2016-06-22 03:20:33 -07:00
Scott Lahteine
d50539583a Make XY_PROBE_SPEED a general probe option 2016-06-22 03:04:47 -07:00
Scott Lahteine
2798499b71 XY_TRAVEL_SPEED => XY_PROBE_SPEED 2016-06-22 02:45:25 -07:00
Scott Lahteine
88dc543584 Add a macro for XY_TRAVEL_FEEDRATE 2016-06-22 02:23:50 -07:00
Scott Lahteine
117db77c55 make motor_current_setting static and constexpr 2016-06-21 19:50:08 -07:00
João Brázio
19fb04d761 Update bq Hephestos 2 config 2016-06-21 18:15:51 -07:00
Scott Lahteine
b0e47608e6 Merge pull request #4108 from esenapaj/Fix-for-PR-#4093
Fix for PR #4093 (Make Z Probe options independent of ABL), etc
2016-06-21 18:12:08 -07:00
Scott Lahteine
c84732e605 Merge pull request #4111 from esenapaj/Cosmetic-changes-and-small-fix-for-thermistortables.h
Cosmetic changes and small fix for thermistortables.h
2016-06-21 18:05:32 -07:00
Scott Lahteine
cdc661ea5e Merge pull request #4110 from esenapaj/Small-cosmetic-changes-for-language-files
Small cosmetic changes for language files
2016-06-21 18:04:12 -07:00
Scott Lahteine
c8186e9423 Merge pull request #4109 from esenapaj/Enclose-#error-string-by-double-quotes
Enclose #error string by double-quotes
2016-06-21 18:03:30 -07:00
Scott Lahteine
40cd20a236 Fix comments on EXPERIMENTAL_I2CBUS 2016-06-21 17:58:44 -07:00
esenapaj
385945ca31 Cosmetic changes and small fix for thermistortables.h
・Adjust spacing
・Standardize comments position
・Remove ',' at the tail of array
2016-06-21 21:19:47 +09:00
esenapaj
fac58f0291 Cosmetic changes for language files 2016-06-21 21:13:25 +09:00
esenapaj
14b661b9e5 Enclose #error string by double-quotes 2016-06-21 21:06:14 +09:00
esenapaj
d583ea852d Standardize format description of Panel 2016-06-21 20:51:27 +09:00
esenapaj
aa6d35bd49 Move code block of probe to appropriate position 2016-06-21 20:36:46 +09:00
esenapaj
740fb2ce39 Adjust spacing 2016-06-21 19:37:45 +09:00
esenapaj
f77f3ffa70 Remove duplicated Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX 2016-06-21 19:33:45 +09:00
Scott Lahteine
19fe93a5a9 Clean up configs for Z_MIN_PROBE_REPEATABILITY_TEST 2016-06-21 03:10:46 -07:00
Scott Lahteine
71a7408012 Merge pull request #4106 from thinkyhead/rc_temp_compile_err
Fix compile error with watch_bed_next_ms
2016-06-21 02:48:46 -07:00
Scott Lahteine
dcb8ec32ee Fix compile error with watch_bed_next_ms 2016-06-21 02:13:41 -07:00
Scott Lahteine
3996242e9d Allow Z_MIN_PROBE_REPEATABILITY_TEST solo 2016-06-21 01:56:40 -07:00
Scott Lahteine
26a9cd0b08 Move run_z_probe to earlier block 2016-06-21 01:25:23 -07:00
Scott Lahteine
7f8a2025af Move raise_z_after_probing into earlier block 2016-06-21 01:03:40 -07:00
Scott Lahteine
2530371516 Always disable probe at the end of G29 2016-06-20 16:40:44 -07:00
Scott Lahteine
6aba98e470 Comment on setup_for_endstop_move 2016-06-20 16:40:44 -07:00
Scott Lahteine
04e88d008e Clear up ordering in G30 2016-06-20 16:40:44 -07:00
Scott Lahteine
ed75b0ea11 Make clean_up function available for probes 2016-06-20 16:28:45 -07:00
Scott Lahteine
51d52cb52a Make run_z_probe available for any bed probe 2016-06-20 16:02:36 -07:00
Scott Lahteine
f6b09cf465 Always use deploy/stow for dock_sled 2016-06-20 15:51:01 -07:00
Scott Lahteine
3b457c2dd3 Use deploy/stow with FIX_MOUNTED_PROBE too 2016-06-20 15:25:01 -07:00
Scott Lahteine
7e9d4a68d4 Always raise Z (if needed) for servo deploy/stow 2016-06-19 20:17:13 -07:00
Scott Lahteine
9beb3f2f5e Merge pull request #4097 from thinkyhead/rc_fil_runout_cleanup
FIL_RUNOUT_INVERTING false by default
2016-06-19 19:46:14 -07:00
Scott Lahteine
f215b30932 Merge pull request #4093 from thinkyhead/rc_probe_without_abl
Make Z Probe options independent of ABL
2016-06-19 19:44:25 -07:00
Scott Lahteine
2fd2301928 FILRUNOUT => FIL_RUNOUT 2016-06-19 19:25:26 -07:00
Scott Lahteine
dfbf8b3c2c FIL_RUNOUT_INVERTING false by default 2016-06-19 19:25:26 -07:00
Scott Lahteine
7b5cd314a5 Merge pull request #4095 from thinkyhead/rc_fil_runout_cleanup
Improve FILAMENT_RUNOUT_SENSOR, FILRUNOUT_PIN
2016-06-19 18:48:18 -07:00
Scott Lahteine
de12228758 Make Z Probe options independent of ABL 2016-06-19 18:47:27 -07:00
Scott Lahteine
add0032820 Improve FILAMENT_RUNOUT_SENSOR, FILRUNOUT_PIN 2016-06-19 18:13:33 -07:00
Scott Lahteine
f8c278ce4d Cartesio UI display option in all configs 2016-06-19 17:39:46 -07:00
Scott Lahteine
400e13d136 Output a message for SD read errors 2016-06-19 17:14:56 -07:00
Roxy-3D
96b8bcca84 Merge pull request #4081 from thinkyhead/rc_tweaky_m48_tweaks
Cleanup of M48
2016-06-18 22:21:16 -05:00
Scott Lahteine
b7e3c1bbc4 Tweak M48 output conditions 2016-06-18 16:17:53 -07:00
Scott Lahteine
1dad912b03 Adjust M48 raise / move handling 2016-06-18 15:38:24 -07:00
Scott Lahteine
46d3ef2223 Simplify sample_set probe_pt call in M48 2016-06-18 15:38:23 -07:00
Scott Lahteine
a647b05f82 Shrink some debug code in G28 2016-06-18 15:38:23 -07:00
Scott Lahteine
4edf813bde Just-in-time declaration style in M48 2016-06-18 15:38:23 -07:00
Juan Ricardo Gomez Anaya
c475291e19 Fix M851
Minor change missing in the process of standardize the gcode M851
2016-06-18 15:19:07 -07:00
Scott Lahteine
e35583888c Merge pull request #4082 from esenapaj/Follow-up-the-PR-#4065
Follow-up the PR #4065 (Remove support for XY servo endstops)
2016-06-18 03:31:12 -07:00
Scott Lahteine
6dff52d920 Merge pull request #4078 from RicardoGA/Language_Spanish
Update Spanish Language
2016-06-18 03:28:46 -07:00
esenapaj
d55b94d606 Follow-up the PR #4065 (Remove support for XY servo endstops)
・Update a forgotten Configuration.h of Cartesio
2016-06-18 18:01:58 +09:00
Scott Lahteine
4e860babbc Allow setting xy_travel_speed for delta leveling also 2016-06-18 01:40:49 -07:00
Scott Lahteine
d36d4edd80 Tweak partial homing code 2016-06-18 01:16:50 -07:00
Scott Lahteine
d3a05de96e Save and restore feedrate in probe functions 2016-06-18 01:16:26 -07:00
Juan Ricardo Gomez Anaya
5991eb428f Update Spanish Language
Spanish language update and also add missing messages
2016-06-18 00:27:04 -05:00
Scott Lahteine
f33bd0bb10 Merge pull request #4077 from thinkyhead/rc_delete_old_macros
Delete some obsolete Z servo macros
2016-06-17 18:59:16 -07:00
Scott Lahteine
defcacc1a9 Delete some obsolete Z servo macros 2016-06-17 18:49:17 -07:00
Scott Lahteine
bbf5b486c3 Add an SD Card stop function, use in ultralcd 2016-06-17 18:27:14 -07:00
Scott Lahteine
3a150f07c2 Merge pull request #4073 from thinkyhead/rc_temp_mystery
Minor tweaks to M109 / M190
2016-06-17 17:49:50 -07:00
Scott Lahteine
bd4ec727e7 Merge pull request #4066 from thinkyhead/rc_M851_with_probe
Make M851 standard with a bed probe
2016-06-17 17:32:55 -07:00
Scott Lahteine
692a6e7c91 Merge pull request #4065 from thinkyhead/rc_goodbye_xy_servos
Remove support for XY servo endstops
2016-06-17 17:32:08 -07:00
Scott Lahteine
de177ba6c9 Minor tweaks to M109 / M190 2016-06-17 17:26:21 -07:00
Scott Lahteine
eab44b30d4 Safety and serial sections 2016-06-17 15:19:43 -07:00
Scott Lahteine
fc56a547d1 Rename movement section to motion 2016-06-17 15:19:43 -07:00
Scott Lahteine
a8b8796cd7 Define probe offsets when a probe exists 2016-06-17 15:19:42 -07:00
Scott Lahteine
1000563d80 Make M851 standard with a bed probe 2016-06-17 15:19:42 -07:00
Scott Lahteine
f66a194159 Merge pull request #4062 from jbrazio/bugfix/compiler-warnings
Fixes misc gcc warnings
2016-06-17 14:23:28 -07:00