Committer:
Sergunb
Date:
Mon Sep 04 12:04:13 2017 +0000
Revision:
0:8f0d870509fe
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Sergunb 0:8f0d870509fe 1 ----------------
Sergunb 0:8f0d870509fe 2 Date: 2017-03-19
Sergunb 0:8f0d870509fe 3 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 4 Subject: Housekeeping.
Sergunb 0:8f0d870509fe 5
Sergunb 0:8f0d870509fe 6 - Moved Grbl logo files to a separate repo.
Sergunb 0:8f0d870509fe 7
Sergunb 0:8f0d870509fe 8 - Added PocketNC FR4 defaults. Needs some additional work though to be
Sergunb 0:8f0d870509fe 9 compatible.
Sergunb 0:8f0d870509fe 10
Sergunb 0:8f0d870509fe 11 - Updated README image links.
Sergunb 0:8f0d870509fe 12
Sergunb 0:8f0d870509fe 13
Sergunb 0:8f0d870509fe 14 ----------------
Sergunb 0:8f0d870509fe 15 Date: 2017-03-19
Sergunb 0:8f0d870509fe 16 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 17 Subject: Update README.md
Sergunb 0:8f0d870509fe 18
Sergunb 0:8f0d870509fe 19 ----------------
Sergunb 0:8f0d870509fe 20 Date: 2017-03-02
Sergunb 0:8f0d870509fe 21 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 22 Subject: Fixed $G report issue with M7 and M8 both enabled.
Sergunb 0:8f0d870509fe 23
Sergunb 0:8f0d870509fe 24 [fix] When M7 and M8 are both enabled, $G report would show `M78`,
Sergunb 0:8f0d870509fe 25 rather than `M7 M8`. This only effects systems that enable M7 mist
Sergunb 0:8f0d870509fe 26 coolant in config.h. Not the default build.
Sergunb 0:8f0d870509fe 27
Sergunb 0:8f0d870509fe 28
Sergunb 0:8f0d870509fe 29 ----------------
Sergunb 0:8f0d870509fe 30 Date: 2017-02-27
Sergunb 0:8f0d870509fe 31 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 32 Subject: Fixed shared build info code.
Sergunb 0:8f0d870509fe 33
Sergunb 0:8f0d870509fe 34 - The build info options of “two switches on an axis” and “homing init
Sergunb 0:8f0d870509fe 35 lock” shared the same letter ‘L’. The former is now ’T’.
Sergunb 0:8f0d870509fe 36
Sergunb 0:8f0d870509fe 37
Sergunb 0:8f0d870509fe 38 ----------------
Sergunb 0:8f0d870509fe 39 Date: 2017-02-23
Sergunb 0:8f0d870509fe 40 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 41 Subject: Restrict coincident target updates to M3 constant laser only.
Sergunb 0:8f0d870509fe 42
Sergunb 0:8f0d870509fe 43 - Restrict M3 forced updates when there is a motion block with a
Sergunb 0:8f0d870509fe 44 coincident target. Force syncing of the spindle state can lead to some
Sergunb 0:8f0d870509fe 45 pauses during a job that has coincident targets. That’s not
Sergunb 0:8f0d870509fe 46 particularly desirable. This ensures M4 dynamic mode is not effected by
Sergunb 0:8f0d870509fe 47 this force-sync.
Sergunb 0:8f0d870509fe 48
Sergunb 0:8f0d870509fe 49
Sergunb 0:8f0d870509fe 50 ----------------
Sergunb 0:8f0d870509fe 51 Date: 2017-02-23
Sergunb 0:8f0d870509fe 52 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 53 Subject: Fixed issue with M3 laser state changes and coincident targets.
Sergunb 0:8f0d870509fe 54
Sergunb 0:8f0d870509fe 55 [fix] When in M3 constant laser power mode, a change from G0 to G1
Sergunb 0:8f0d870509fe 56 would not set the laser on, if G1 was passed with a coincident target.
Sergunb 0:8f0d870509fe 57 Motion controller now checks for a coincident target situation and will
Sergunb 0:8f0d870509fe 58 force a spindle sync when detected.
Sergunb 0:8f0d870509fe 59
Sergunb 0:8f0d870509fe 60
Sergunb 0:8f0d870509fe 61 ----------------
Sergunb 0:8f0d870509fe 62 Date: 2017-01-31
Sergunb 0:8f0d870509fe 63 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 64 Subject: Additional build info in the $I printout.
Sergunb 0:8f0d870509fe 65
Sergunb 0:8f0d870509fe 66 - [new] Added total available planner buffer blocks (15 shown, but
Sergunb 0:8f0d870509fe 67 there are 16. one is used by the ring buffer and to execute system
Sergunb 0:8f0d870509fe 68 motions) and serial RX buffer bytes. This information is useful for
Sergunb 0:8f0d870509fe 69 GUIs to setup and optimize their streaming protocols easily.
Sergunb 0:8f0d870509fe 70
Sergunb 0:8f0d870509fe 71 [doc] Updated the interface document to reflect the change.
Sergunb 0:8f0d870509fe 72
Sergunb 0:8f0d870509fe 73
Sergunb 0:8f0d870509fe 74 ----------------
Sergunb 0:8f0d870509fe 75 Date: 2017-01-29
Sergunb 0:8f0d870509fe 76 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 77 Subject: Tidying up parking override control implementation
Sergunb 0:8f0d870509fe 78
Sergunb 0:8f0d870509fe 79 [new] Added a default configuration for the parking override control
Sergunb 0:8f0d870509fe 80 upon a reset or power-up. By default, parking is enabled, but this may
Sergunb 0:8f0d870509fe 81 be disabled via a config.h option.
Sergunb 0:8f0d870509fe 82
Sergunb 0:8f0d870509fe 83 [fix] Parking override control should be checking if the command word
Sergunb 0:8f0d870509fe 84 is passed, rather than the value.
Sergunb 0:8f0d870509fe 85
Sergunb 0:8f0d870509fe 86
Sergunb 0:8f0d870509fe 87 ----------------
Sergunb 0:8f0d870509fe 88 Date: 2017-01-28
Sergunb 0:8f0d870509fe 89 Author: chamnit
Sergunb 0:8f0d870509fe 90 Subject: v1.1f. Parking override control. Spindle enable pin option.
Sergunb 0:8f0d870509fe 91
Sergunb 0:8f0d870509fe 92 [ver] v1.1f update due to tweaks to interface from new parking override
Sergunb 0:8f0d870509fe 93 control.
Sergunb 0:8f0d870509fe 94
Sergunb 0:8f0d870509fe 95 [new] Parking motion override control via new `M56 P0` and `M56 P1`
Sergunb 0:8f0d870509fe 96 command, which disables and enables the parking motion, respectively.
Sergunb 0:8f0d870509fe 97 Requires ENABLE_PARKING_OVERRIDE_CONTROL and PARKING_ENABLE enabled in
Sergunb 0:8f0d870509fe 98 config.h. Primarily for OEMs.
Sergunb 0:8f0d870509fe 99
Sergunb 0:8f0d870509fe 100 [new] `M56` appears in the $G report when enabled.
Sergunb 0:8f0d870509fe 101
Sergunb 0:8f0d870509fe 102 [new] Five new build info identification letters. Some were missing and
Sergunb 0:8f0d870509fe 103 a couple are new. Updated the CSV and documentation to reflect these
Sergunb 0:8f0d870509fe 104 new items.
Sergunb 0:8f0d870509fe 105
Sergunb 0:8f0d870509fe 106 [new] Spindle enable pin configuration option to alter its behavior
Sergunb 0:8f0d870509fe 107 based on how certain lasers work. By default, Grbl treats the enable
Sergunb 0:8f0d870509fe 108 pin separately and leaves it on when S is 0. The new option turns the
Sergunb 0:8f0d870509fe 109 enable pin on and off with S>0 and S=0. This only is in effect when a
Sergunb 0:8f0d870509fe 110 user enables the USE_SPINDLE_DIR_AS_ENABLE_PIN option.
Sergunb 0:8f0d870509fe 111
Sergunb 0:8f0d870509fe 112 [fix] M4 is now allowed to work when USE_SPINDLE_DIR_AS_ENABLE_PIN is
Sergunb 0:8f0d870509fe 113 enabled. Previously this was blocked and was problematic for laser
Sergunb 0:8f0d870509fe 114 folks using M4.
Sergunb 0:8f0d870509fe 115
Sergunb 0:8f0d870509fe 116 [fix] Properly declared system variables as extern. Not sure how that
Sergunb 0:8f0d870509fe 117 went unnoticed or why it worked up until now but it has.
Sergunb 0:8f0d870509fe 118
Sergunb 0:8f0d870509fe 119 [fix] EXTREMELY RARE. When AMASS is intentionally disabled and sent a
Sergunb 0:8f0d870509fe 120 motion command that is _one step_ in length, Grbl would not actuate the
Sergunb 0:8f0d870509fe 121 step due to numerical round-off. Applied a fix to prevent the round-off
Sergunb 0:8f0d870509fe 122 issue.
Sergunb 0:8f0d870509fe 123
Sergunb 0:8f0d870509fe 124 [fix] Added a compile-time check for AMASS settings to make sure that
Sergunb 0:8f0d870509fe 125 the numerical round-off issue doesn’t effect it. This would only happen
Sergunb 0:8f0d870509fe 126 if someone set AMASS max levels to zero. It does not effect AMASS with
Sergunb 0:8f0d870509fe 127 its current defaults.
Sergunb 0:8f0d870509fe 128
Sergunb 0:8f0d870509fe 129 [fix] Wrapped the mc_parking_motion() function in an ifdef for porting
Sergunb 0:8f0d870509fe 130 purposes.
Sergunb 0:8f0d870509fe 131
Sergunb 0:8f0d870509fe 132 [fix] Fixed an issue when in inverse time mode and G0’s would require a
Sergunb 0:8f0d870509fe 133 F word. This was not correct.
Sergunb 0:8f0d870509fe 134
Sergunb 0:8f0d870509fe 135 [fix] Added a note in the defaults.h file that MAX_TRAVEL values must
Sergunb 0:8f0d870509fe 136 be positive. Some users were setting this negative and it was causing
Sergunb 0:8f0d870509fe 137 issues.
Sergunb 0:8f0d870509fe 138
Sergunb 0:8f0d870509fe 139
Sergunb 0:8f0d870509fe 140 ----------------
Sergunb 0:8f0d870509fe 141 Date: 2017-01-14
Sergunb 0:8f0d870509fe 142 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 143 Subject: Tool number bug fix. Updated documentation.
Sergunb 0:8f0d870509fe 144
Sergunb 0:8f0d870509fe 145 - [fix] Tool numbers were not being tracked and reported correctly. Now
Sergunb 0:8f0d870509fe 146 shows tool number values in $G when programmed.
Sergunb 0:8f0d870509fe 147
Sergunb 0:8f0d870509fe 148 - [fix] Added a max tool number value check to the g-code parser.
Sergunb 0:8f0d870509fe 149
Sergunb 0:8f0d870509fe 150 - [doc] Added a new error code for invalid tool number. Updated CSV and
Sergunb 0:8f0d870509fe 151 interface documents.
Sergunb 0:8f0d870509fe 152
Sergunb 0:8f0d870509fe 153 - [doc] Added a implementation note for buffer state in status reports.
Sergunb 0:8f0d870509fe 154 Don’t rely on this data for streaming.
Sergunb 0:8f0d870509fe 155
Sergunb 0:8f0d870509fe 156
Sergunb 0:8f0d870509fe 157 ----------------
Sergunb 0:8f0d870509fe 158 Date: 2017-01-03
Sergunb 0:8f0d870509fe 159 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 160 Subject: Spindle enable pin with variable spindle option fix.
Sergunb 0:8f0d870509fe 161
Sergunb 0:8f0d870509fe 162 - [fix] When USE_SPINDLE_DIR_AS_ENABLE_PIN is enabled in config.h, the
Sergunb 0:8f0d870509fe 163 enable pin was not being set when spindle speed is zero. This behavior
Sergunb 0:8f0d870509fe 164 should now be fixed.
Sergunb 0:8f0d870509fe 165
Sergunb 0:8f0d870509fe 166
Sergunb 0:8f0d870509fe 167 ----------------
Sergunb 0:8f0d870509fe 168 Date: 2016-12-19
Sergunb 0:8f0d870509fe 169 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 170 Subject: Fixed homing fail alarm handling. Re-integrated software debouncing.
Sergunb 0:8f0d870509fe 171
Sergunb 0:8f0d870509fe 172 - [bug] Fixed a homing fail issue, where the alarm was not being set
Sergunb 0:8f0d870509fe 173 right, not cleared correctly. It would report the wrong code and enter
Sergunb 0:8f0d870509fe 174 an infinite alarm loop. This was due to how alarm codes were altered a
Sergunb 0:8f0d870509fe 175 while back. Now updated and fixed to show the right codes.
Sergunb 0:8f0d870509fe 176
Sergunb 0:8f0d870509fe 177 - [feature] Re-installed optional software debouncing for hard limit
Sergunb 0:8f0d870509fe 178 switches. By request.
Sergunb 0:8f0d870509fe 179
Sergunb 0:8f0d870509fe 180
Sergunb 0:8f0d870509fe 181 ----------------
Sergunb 0:8f0d870509fe 182 Date: 2016-12-18
Sergunb 0:8f0d870509fe 183 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 184 Subject: Addressed optional PWM min value issue. Updated docs.
Sergunb 0:8f0d870509fe 185
Sergunb 0:8f0d870509fe 186 - [fix] Spindle PWM minimum value had some typos. Fixed the macros to
Sergunb 0:8f0d870509fe 187 compile correctly. Only effects users that enable SPINDLE_MINIMUM_PWM.
Sergunb 0:8f0d870509fe 188 The name changed to SPINDLE_PWM_MIN_VALUE for consistency sake.
Sergunb 0:8f0d870509fe 189
Sergunb 0:8f0d870509fe 190 - Updated the laser documentation.
Sergunb 0:8f0d870509fe 191
Sergunb 0:8f0d870509fe 192
Sergunb 0:8f0d870509fe 193 ----------------
Sergunb 0:8f0d870509fe 194 Date: 2016-12-12
Sergunb 0:8f0d870509fe 195 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 196 Subject: Updating steam.py streaming script
Sergunb 0:8f0d870509fe 197
Sergunb 0:8f0d870509fe 198 - Added push message capability to the stream.py streaming script. It
Sergunb 0:8f0d870509fe 199 prints out as a `Debug:` string in the output.
Sergunb 0:8f0d870509fe 200
Sergunb 0:8f0d870509fe 201
Sergunb 0:8f0d870509fe 202 ----------------
Sergunb 0:8f0d870509fe 203 Date: 2016-12-11
Sergunb 0:8f0d870509fe 204 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 205 Subject: Updated documentation.
Sergunb 0:8f0d870509fe 206
Sergunb 0:8f0d870509fe 207
Sergunb 0:8f0d870509fe 208 ----------------
Sergunb 0:8f0d870509fe 209 Date: 2016-12-10
Sergunb 0:8f0d870509fe 210 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 211 Subject: Updated documentation. Cleaned up a bit.
Sergunb 0:8f0d870509fe 212
Sergunb 0:8f0d870509fe 213 - [doc] Updated the markdown documents for the v1.1 release.
Sergunb 0:8f0d870509fe 214
Sergunb 0:8f0d870509fe 215 - [doc] Removed references to classic GUI mode.
Sergunb 0:8f0d870509fe 216
Sergunb 0:8f0d870509fe 217
Sergunb 0:8f0d870509fe 218 ----------------
Sergunb 0:8f0d870509fe 219 Date: 2016-12-09
Sergunb 0:8f0d870509fe 220 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 221 Subject: Update README.md
Sergunb 0:8f0d870509fe 222
Sergunb 0:8f0d870509fe 223 ----------------
Sergunb 0:8f0d870509fe 224 Date: 2016-12-09
Sergunb 0:8f0d870509fe 225 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 226 Subject: Update README.md
Sergunb 0:8f0d870509fe 227
Sergunb 0:8f0d870509fe 228 ----------------
Sergunb 0:8f0d870509fe 229 Date: 2016-12-09
Sergunb 0:8f0d870509fe 230 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 231 Subject: Update README.md
Sergunb 0:8f0d870509fe 232
Sergunb 0:8f0d870509fe 233 ----------------
Sergunb 0:8f0d870509fe 234 Date: 2016-12-08
Sergunb 0:8f0d870509fe 235 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 236 Subject: Removed classic GUI interface. Fixed typo with line number support.
Sergunb 0:8f0d870509fe 237
Sergunb 0:8f0d870509fe 238 - [config] Permanently removed classic GUI interface support. This
Sergunb 0:8f0d870509fe 239 unintentionally created a problem where some users/GUI devs used this
Sergunb 0:8f0d870509fe 240 compatibility mode and did not update to the new interface. So, there
Sergunb 0:8f0d870509fe 241 were two interfaces in use, rather than just one like it was intended.
Sergunb 0:8f0d870509fe 242 This removal should help everyone by forcing all GUIs to update and
Sergunb 0:8f0d870509fe 243 updated GUI not having to support yet another interface.
Sergunb 0:8f0d870509fe 244
Sergunb 0:8f0d870509fe 245 - Fixed typo with line number support in jog mode.
Sergunb 0:8f0d870509fe 246
Sergunb 0:8f0d870509fe 247
Sergunb 0:8f0d870509fe 248 ----------------
Sergunb 0:8f0d870509fe 249 Date: 2016-12-04
Sergunb 0:8f0d870509fe 250 Author: chamnit
Sergunb 0:8f0d870509fe 251 Subject: Fixed unintended laser mode pausing. Updated documentation. Min SS OVR lowered to 10%.
Sergunb 0:8f0d870509fe 252
Sergunb 0:8f0d870509fe 253 - [laser] Tested a working version and pushed the wrong one for the
Sergunb 0:8f0d870509fe 254 last! 20161203 was pausing upon every spindle speed change. That’s not
Sergunb 0:8f0d870509fe 255 right. Fixed so nearly all motions are passed through and does not stop.
Sergunb 0:8f0d870509fe 256
Sergunb 0:8f0d870509fe 257 - Minimum spindle speed override lower from 50% to 10%. Lasers could
Sergunb 0:8f0d870509fe 258 use the lower speeds.
Sergunb 0:8f0d870509fe 259
Sergunb 0:8f0d870509fe 260 - Fixed a very minor bug related to G80 error checking. Allowed no
Sergunb 0:8f0d870509fe 261 error with non-modal motions with axis words. Not correct and fixed.
Sergunb 0:8f0d870509fe 262
Sergunb 0:8f0d870509fe 263 - Fixed a compile error when disabling VARIABLE_SPINDLE
Sergunb 0:8f0d870509fe 264
Sergunb 0:8f0d870509fe 265 - [doc] Updated some obsolete documentation.
Sergunb 0:8f0d870509fe 266
Sergunb 0:8f0d870509fe 267 - [doc] Started a “Laser Mode” document that summarizes how Grbl’s new
Sergunb 0:8f0d870509fe 268 laser mode works.
Sergunb 0:8f0d870509fe 269
Sergunb 0:8f0d870509fe 270
Sergunb 0:8f0d870509fe 271 ----------------
Sergunb 0:8f0d870509fe 272 Date: 2016-12-03
Sergunb 0:8f0d870509fe 273 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 274 Subject: v1.1e: New laser features. G-code parser refactoring. CoreXY homing fix.
Sergunb 0:8f0d870509fe 275
Sergunb 0:8f0d870509fe 276 - Increment to v1.1e due to new laser features.
Sergunb 0:8f0d870509fe 277
Sergunb 0:8f0d870509fe 278 - After several discussions with some prominent laser people, a few
Sergunb 0:8f0d870509fe 279 tweaks to the new laser mode has been installed.
Sergunb 0:8f0d870509fe 280
Sergunb 0:8f0d870509fe 281 - LASER: M3 behaves in a constant power mode.
Sergunb 0:8f0d870509fe 282
Sergunb 0:8f0d870509fe 283 - LASER: M4 behaves in a dynamic power mode, where the laser power is
Sergunb 0:8f0d870509fe 284 automatically adjusted based on how fast Grbl is moving relative to the
Sergunb 0:8f0d870509fe 285 programmed feed rate. This is the same as the CONSTANT_POWER_PER_RATE
Sergunb 0:8f0d870509fe 286 config.h option in the last version. NOTE: When not in motion in M4,
Sergunb 0:8f0d870509fe 287 Grbl automatically turns off the laser. Again, it only operates while
Sergunb 0:8f0d870509fe 288 moving!
Sergunb 0:8f0d870509fe 289
Sergunb 0:8f0d870509fe 290 - LASER: Only G1, G2, and G3 motion modes will turn on the laser. So,
Sergunb 0:8f0d870509fe 291 this means that G0, G80 motion modes will always keep the laser
Sergunb 0:8f0d870509fe 292 disabled. No matter if M3/M4 are active!
Sergunb 0:8f0d870509fe 293
Sergunb 0:8f0d870509fe 294 - LASER: A spindle stop override is automatically invoked when a laser
Sergunb 0:8f0d870509fe 295 is put in a feed hold. This behavior may be disabled by a config.h
Sergunb 0:8f0d870509fe 296 option.
Sergunb 0:8f0d870509fe 297
Sergunb 0:8f0d870509fe 298 - Lots of little tweaks to the g-code parser to help streamline it a
Sergunb 0:8f0d870509fe 299 bit. It should no effect how it operates. Generally just added a parser
Sergunb 0:8f0d870509fe 300 flag to track and execute certain scenarios a little more clearly.
Sergunb 0:8f0d870509fe 301
Sergunb 0:8f0d870509fe 302 - Jog motions now allow line numbers to be passed to it and will be
Sergunb 0:8f0d870509fe 303 displayed in the status reports.
Sergunb 0:8f0d870509fe 304
Sergunb 0:8f0d870509fe 305 - Fixed a CoreXY homing bug.
Sergunb 0:8f0d870509fe 306
Sergunb 0:8f0d870509fe 307 - Fixed an issue when $13 is changed, WCO isn’t sent immediately.
Sergunb 0:8f0d870509fe 308
Sergunb 0:8f0d870509fe 309 - Altered how spindle PWM is set in the stepper ISR. Updated on a step
Sergunb 0:8f0d870509fe 310 segment basis now. May need to change this back if there are any
Sergunb 0:8f0d870509fe 311 oddities from doing this.
Sergunb 0:8f0d870509fe 312
Sergunb 0:8f0d870509fe 313 - Updated some documentation. Clarified why M0 no longer showing up in
Sergunb 0:8f0d870509fe 314 $G and why a `1.` floating point values are shown with no decimals,
Sergunb 0:8f0d870509fe 315 like so `1`.
Sergunb 0:8f0d870509fe 316
Sergunb 0:8f0d870509fe 317
Sergunb 0:8f0d870509fe 318 ----------------
Sergunb 0:8f0d870509fe 319 Date: 2016-11-12
Sergunb 0:8f0d870509fe 320 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 321 Subject: PWM calculation correction.
Sergunb 0:8f0d870509fe 322
Sergunb 0:8f0d870509fe 323 - The PWM calculation was a little bit off and has been corrected.
Sergunb 0:8f0d870509fe 324
Sergunb 0:8f0d870509fe 325 - Edited the unused settings strings to be smaller and just show what
Sergunb 0:8f0d870509fe 326 the settings are, rather than include units. May include this in the
Sergunb 0:8f0d870509fe 327 master build, if it fits.
Sergunb 0:8f0d870509fe 328
Sergunb 0:8f0d870509fe 329 - The minimum spindle PWM define in config.h needed to be update for
Sergunb 0:8f0d870509fe 330 cpu map compatibilty.
Sergunb 0:8f0d870509fe 331
Sergunb 0:8f0d870509fe 332
Sergunb 0:8f0d870509fe 333 ----------------
Sergunb 0:8f0d870509fe 334 Date: 2016-11-04
Sergunb 0:8f0d870509fe 335 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 336 Subject: Fixed a g-code parser issue caused by last commit.
Sergunb 0:8f0d870509fe 337
Sergunb 0:8f0d870509fe 338 - G-code parser refactoring in the last commit wasn’t tested. Found and
Sergunb 0:8f0d870509fe 339 fixed issues with G28.1/30.1 and G38.x probe commands. They were not
Sergunb 0:8f0d870509fe 340 being accepted due to a borked mantissa check.
Sergunb 0:8f0d870509fe 341
Sergunb 0:8f0d870509fe 342
Sergunb 0:8f0d870509fe 343 ----------------
Sergunb 0:8f0d870509fe 344 Date: 2016-11-04
Sergunb 0:8f0d870509fe 345 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 346 Subject: Improved constant laser power per rate mode. Re-factored for flash size. Minor bug fixes.
Sergunb 0:8f0d870509fe 347
Sergunb 0:8f0d870509fe 348 - NOTE: This commit has largely been untested.
Sergunb 0:8f0d870509fe 349
Sergunb 0:8f0d870509fe 350 - Constant laser power per rate mode has been improved. Altered its
Sergunb 0:8f0d870509fe 351 implementation to be more responsive and accurate.
Sergunb 0:8f0d870509fe 352
Sergunb 0:8f0d870509fe 353 - Based on LaserWeb dev feedback, only G1, G2, and G3 moves operate
Sergunb 0:8f0d870509fe 354 with constant laser power mode. Meaning that G0, G38.x, and $J jogging
Sergunb 0:8f0d870509fe 355 motions operate without it and will keep a constant power output. This
Sergunb 0:8f0d870509fe 356 was specifically requested as a way to focus the laser by keeping the
Sergunb 0:8f0d870509fe 357 laser on when not moving. Operationally, this shouldn’t alter how the
Sergunb 0:8f0d870509fe 358 laser mode operates.
Sergunb 0:8f0d870509fe 359
Sergunb 0:8f0d870509fe 360 - Re-factored parts of the g-code parser and g-code state reports to
Sergunb 0:8f0d870509fe 361 save a few hundred bytes of flash. What was done makes the code a bit
Sergunb 0:8f0d870509fe 362 more unreadable (bad), but the flash space was in dire need. So, I’m
Sergunb 0:8f0d870509fe 363 willing to live with it for now.
Sergunb 0:8f0d870509fe 364
Sergunb 0:8f0d870509fe 365 - Fixed a problem with $G g-code state reports. Showed `M0` program
Sergunb 0:8f0d870509fe 366 pause during a run state. Now fixed to show nothing during a run state.
Sergunb 0:8f0d870509fe 367 Also, `M30` program end was shown as `M2`. This was also corrected.
Sergunb 0:8f0d870509fe 368
Sergunb 0:8f0d870509fe 369 - Improved spindle stop override responsiveness by removing the
Sergunb 0:8f0d870509fe 370 enforced spindle restoring delay. It’s not needed for a feature that is
Sergunb 0:8f0d870509fe 371 user controlled.
Sergunb 0:8f0d870509fe 372
Sergunb 0:8f0d870509fe 373 - Fixed a bug with G2/3 arcs in inverse time mode.
Sergunb 0:8f0d870509fe 374
Sergunb 0:8f0d870509fe 375 - Updated the interface.md document to make it more clear how WPos: or
Sergunb 0:8f0d870509fe 376 MPos: can be calculated from WCO:. Some GUI devs have failed to catch
Sergunb 0:8f0d870509fe 377 this in the documentation.
Sergunb 0:8f0d870509fe 378
Sergunb 0:8f0d870509fe 379
Sergunb 0:8f0d870509fe 380 ----------------
Sergunb 0:8f0d870509fe 381 Date: 2016-10-27
Sergunb 0:8f0d870509fe 382 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 383 Subject: Spindle speed overrides behavior tweak. New experimental laser dynamic power mode.
Sergunb 0:8f0d870509fe 384
Sergunb 0:8f0d870509fe 385 - Spindle speed overrides now update immediately if they are changed
Sergunb 0:8f0d870509fe 386 while in a HOLD state. Previously, they would update after exiting the
Sergunb 0:8f0d870509fe 387 HOLD, which isn’t correct.
Sergunb 0:8f0d870509fe 388
Sergunb 0:8f0d870509fe 389 - New experimental dynamic laser power mode that adjusts laser power
Sergunb 0:8f0d870509fe 390 based on current machine speed. Enabled by uncommenting
Sergunb 0:8f0d870509fe 391 LASER_CONSTANT_POWER_PER_RATE in config.h
Sergunb 0:8f0d870509fe 392
Sergunb 0:8f0d870509fe 393 - It assumes the programmed rate is the intended power/rate for the
Sergunb 0:8f0d870509fe 394 motion.
Sergunb 0:8f0d870509fe 395 - Feed rate overrides (FRO) do not effect the power/rate. Meaning
Sergunb 0:8f0d870509fe 396 that spindle PWM will automatically lower with lower FRO and increase
Sergunb 0:8f0d870509fe 397 with higher FRO to keep it the same.
Sergunb 0:8f0d870509fe 398 - Spindle speed overrides (SSO) will directly increase and decrease
Sergunb 0:8f0d870509fe 399 the power/rate. So 150% SSO will increase the PWM output by 150% for
Sergunb 0:8f0d870509fe 400 the same speed.
Sergunb 0:8f0d870509fe 401 - The combination of FRO and SSO behaviors should allow for subtle
Sergunb 0:8f0d870509fe 402 and highly flexible tuning of how the laser cutter is operating in
Sergunb 0:8f0d870509fe 403 real-time and during the job.
Sergunb 0:8f0d870509fe 404
Sergunb 0:8f0d870509fe 405 - Re-factored planner block rapid rate handling for the dynamic laser
Sergunb 0:8f0d870509fe 406 power feature. Should have had no effect on how Grbl operates.
Sergunb 0:8f0d870509fe 407
Sergunb 0:8f0d870509fe 408
Sergunb 0:8f0d870509fe 409 ----------------
Sergunb 0:8f0d870509fe 410 Date: 2016-10-26
Sergunb 0:8f0d870509fe 411 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 412 Subject: Add high-frequency spindle output option. Minor parking motion re-factoring.
Sergunb 0:8f0d870509fe 413
Sergunb 0:8f0d870509fe 414 - Some laser controllers were reported to need a very high PWM
Sergunb 0:8f0d870509fe 415 frequency. Added a line to enable this in cpu_map.h, if needed.
Sergunb 0:8f0d870509fe 416
Sergunb 0:8f0d870509fe 417 - Cleaned up some of the parking code. Mostly just editing the comments.
Sergunb 0:8f0d870509fe 418
Sergunb 0:8f0d870509fe 419 - Moved the accessory state resetting after the initial parking
Sergunb 0:8f0d870509fe 420 retract. Should ensure the accessory state is properly handled upon an
Sergunb 0:8f0d870509fe 421 aborted parking restore. Not certain if this was a problem before
Sergunb 0:8f0d870509fe 422 though. Just to be sure.
Sergunb 0:8f0d870509fe 423
Sergunb 0:8f0d870509fe 424
Sergunb 0:8f0d870509fe 425 ----------------
Sergunb 0:8f0d870509fe 426 Date: 2016-10-25
Sergunb 0:8f0d870509fe 427 Author: chamnit
Sergunb 0:8f0d870509fe 428 Subject: Mandate all probe cycles ignore feed overrides.
Sergunb 0:8f0d870509fe 429
Sergunb 0:8f0d870509fe 430 - For repeatability reasons, all G38.x probe cycles ignore feed rate
Sergunb 0:8f0d870509fe 431 overrides and move at their programmed speed.
Sergunb 0:8f0d870509fe 432
Sergunb 0:8f0d870509fe 433 - The mandate can be removed with a new config.h option.
Sergunb 0:8f0d870509fe 434
Sergunb 0:8f0d870509fe 435 - Updated the documentation to reflect the change.
Sergunb 0:8f0d870509fe 436
Sergunb 0:8f0d870509fe 437
Sergunb 0:8f0d870509fe 438 ----------------
Sergunb 0:8f0d870509fe 439 Date: 2016-10-25
Sergunb 0:8f0d870509fe 440 Author: chamnit
Sergunb 0:8f0d870509fe 441 Subject: Resolved parking accessory handling issue.
Sergunb 0:8f0d870509fe 442
Sergunb 0:8f0d870509fe 443 - Yikes. Totally borked the last parking “fix”. Testing shows that all
Sergunb 0:8f0d870509fe 444 accessories are now properly handled when retracting and restoring. It
Sergunb 0:8f0d870509fe 445 was caused by not accounting for the planner re-factoring correctly in
Sergunb 0:8f0d870509fe 446 the parking code.
Sergunb 0:8f0d870509fe 447
Sergunb 0:8f0d870509fe 448
Sergunb 0:8f0d870509fe 449 ----------------
Sergunb 0:8f0d870509fe 450 Date: 2016-10-24
Sergunb 0:8f0d870509fe 451 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 452 Subject: Minor re-factoring. Fix an issue with parking and spindle restore.
Sergunb 0:8f0d870509fe 453
Sergunb 0:8f0d870509fe 454 - Altered the report counters to be count down, rather than count up.
Sergunb 0:8f0d870509fe 455 Simplified some of the logic.
Sergunb 0:8f0d870509fe 456
Sergunb 0:8f0d870509fe 457 - Fixed an issue with parking restore. The spindle state would disable
Sergunb 0:8f0d870509fe 458 then reenable.
Sergunb 0:8f0d870509fe 459
Sergunb 0:8f0d870509fe 460 - Clarified some of the config.h descriptions.
Sergunb 0:8f0d870509fe 461
Sergunb 0:8f0d870509fe 462 - Moved the compile-time checks from config.h to grbl.h. They don’t
Sergunb 0:8f0d870509fe 463 belong in the config.h file.
Sergunb 0:8f0d870509fe 464
Sergunb 0:8f0d870509fe 465 - Refactored the initialization of the system variables in main.c.
Sergunb 0:8f0d870509fe 466 System position and probe position were undefined when power cycled,
Sergunb 0:8f0d870509fe 467 but were zero anyway. Added clear vector code to make it explicit.
Sergunb 0:8f0d870509fe 468
Sergunb 0:8f0d870509fe 469
Sergunb 0:8f0d870509fe 470 ----------------
Sergunb 0:8f0d870509fe 471 Date: 2016-10-23
Sergunb 0:8f0d870509fe 472 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 473 Subject: Spindle speed close to minimum fix.
Sergunb 0:8f0d870509fe 474
Sergunb 0:8f0d870509fe 475 - When spindle speed is close to the minimum rpm, the PWM value would
Sergunb 0:8f0d870509fe 476 be zero or lower than allowed. The computation error was caused by
Sergunb 0:8f0d870509fe 477 setting the minimum PWM value to zero, when it should have been 1.
Sergunb 0:8f0d870509fe 478
Sergunb 0:8f0d870509fe 479 - Added a compiler check for minimum PWM to be greater than zero.
Sergunb 0:8f0d870509fe 480
Sergunb 0:8f0d870509fe 481 - Moved some of the spindle PWM macros to a more appropriate place in
Sergunb 0:8f0d870509fe 482 the cpu_map.h.
Sergunb 0:8f0d870509fe 483
Sergunb 0:8f0d870509fe 484
Sergunb 0:8f0d870509fe 485 ----------------
Sergunb 0:8f0d870509fe 486 Date: 2016-10-22
Sergunb 0:8f0d870509fe 487 Author: Will Winder
Sergunb 0:8f0d870509fe 488 Subject: Minor VARIABLE_SPINDLE feature toggle refactoring (#16)
Sergunb 0:8f0d870509fe 489
Sergunb 0:8f0d870509fe 490 * Modify code CSV format.
Sergunb 0:8f0d870509fe 491
Sergunb 0:8f0d870509fe 492 - Wrap value in quotes to avoid issue with embedded commas. This occurs
Sergunb 0:8f0d870509fe 493 in one of the alarm codes.
Sergunb 0:8f0d870509fe 494
Sergunb 0:8f0d870509fe 495 - Change header row format to allow same parsing code as data rows.
Sergunb 0:8f0d870509fe 496
Sergunb 0:8f0d870509fe 497 * VARIABLE_SPINDLE feature flag experiment.
Sergunb 0:8f0d870509fe 498
Sergunb 0:8f0d870509fe 499 - Use a macro for 'spindle_set_speed' and 'spindle_sync' to reduce the
Sergunb 0:8f0d870509fe 500 number of required VARIABLE_SPINDLE checks.
Sergunb 0:8f0d870509fe 501
Sergunb 0:8f0d870509fe 502
Sergunb 0:8f0d870509fe 503 ----------------
Sergunb 0:8f0d870509fe 504 Date: 2016-10-18
Sergunb 0:8f0d870509fe 505 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 506 Subject: Improved option for v0.9 GUI compatibility.
Sergunb 0:8f0d870509fe 507
Sergunb 0:8f0d870509fe 508 - Addressed an issue with backward compatibility with Grbl v0.9-style
Sergunb 0:8f0d870509fe 509 GUIs.
Sergunb 0:8f0d870509fe 510
Sergunb 0:8f0d870509fe 511 - It still may not work due to new data and states coming back from
Sergunb 0:8f0d870509fe 512 Grbl v1.1. Regardless, DO NOT TRY TO USE THE COMPATIBILITY MODE UNTIL
Sergunb 0:8f0d870509fe 513 THERE IS A REALLY GOOD REASON TO.
Sergunb 0:8f0d870509fe 514
Sergunb 0:8f0d870509fe 515 - v0.9 GUI compatibility mode will be removed in future versions.
Sergunb 0:8f0d870509fe 516 You’ve been warned. It’s highly recommended for GUIs to update to the
Sergunb 0:8f0d870509fe 517 new v1.1 interface.
Sergunb 0:8f0d870509fe 518
Sergunb 0:8f0d870509fe 519 - Compability mode will only fit on an Arduino Uno due to size
Sergunb 0:8f0d870509fe 520 increases.
Sergunb 0:8f0d870509fe 521
Sergunb 0:8f0d870509fe 522 - Removed the REPORT_GUI_MODE compile option since it’s part of the
Sergunb 0:8f0d870509fe 523 v1.1 interface standard.
Sergunb 0:8f0d870509fe 524
Sergunb 0:8f0d870509fe 525 - Updated the documentation to better describe the compatibility mode
Sergunb 0:8f0d870509fe 526 build option.
Sergunb 0:8f0d870509fe 527
Sergunb 0:8f0d870509fe 528
Sergunb 0:8f0d870509fe 529 ----------------
Sergunb 0:8f0d870509fe 530 Date: 2016-10-17
Sergunb 0:8f0d870509fe 531 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 532 Subject: v1.1d: Tweaked interface a bit. Added realtime spindle speed and build option data. Minor bug fixes.
Sergunb 0:8f0d870509fe 533
Sergunb 0:8f0d870509fe 534 - Increment to v1.1d due to interface tweaks.
Sergunb 0:8f0d870509fe 535
Sergunb 0:8f0d870509fe 536 - Based on GUI dev feedback, the toggle overrides report was removed
Sergunb 0:8f0d870509fe 537 and replace with showing “accessory state”. This shows a character if a
Sergunb 0:8f0d870509fe 538 particular accessory is enabled, like the spindle or flood coolant.
Sergunb 0:8f0d870509fe 539 These can be directly altered by the toggle overrides, so when they
Sergunb 0:8f0d870509fe 540 execute, a GUI will be able to observe the state altering as feedback.
Sergunb 0:8f0d870509fe 541
Sergunb 0:8f0d870509fe 542 - Altered the real-time feed rate to show real-time spindle speed as
Sergunb 0:8f0d870509fe 543 well. It was an over-sight on my part. It’s needed because it’s hard to
Sergunb 0:8f0d870509fe 544 know what the current spindle speed is when overrides are altering it.
Sergunb 0:8f0d870509fe 545 Especially during something like a laser cutting job when its important
Sergunb 0:8f0d870509fe 546 to know how spindle speed overrides are effecting things.
Sergunb 0:8f0d870509fe 547
Sergunb 0:8f0d870509fe 548 - Real-time spindle speed is not shown if VARIABLE_SPINDLE is disabled.
Sergunb 0:8f0d870509fe 549 The old real-time feed rate data field will show instead.
Sergunb 0:8f0d870509fe 550
Sergunb 0:8f0d870509fe 551 - Compile-time option data is now included in another message
Sergunb 0:8f0d870509fe 552 immediately following the build info version string, starting with
Sergunb 0:8f0d870509fe 553 `[OPT:`. A character code follows the data type name with each
Sergunb 0:8f0d870509fe 554 indicating a particular option enabled or disabled. This will help
Sergunb 0:8f0d870509fe 555 immensely with debugging Grbl as well as help GUIs know exactly how
Sergunb 0:8f0d870509fe 556 Grbl was compiled.
Sergunb 0:8f0d870509fe 557
Sergunb 0:8f0d870509fe 558 - These interface changes are detailed in the updated documentation.
Sergunb 0:8f0d870509fe 559
Sergunb 0:8f0d870509fe 560 - Reduced the default planner buffer size from 17 to 16. Needed to free
Sergunb 0:8f0d870509fe 561 up some memory…
Sergunb 0:8f0d870509fe 562
Sergunb 0:8f0d870509fe 563 - For increasing the serial TX buffer size from 90 to 104 bytes. The
Sergunb 0:8f0d870509fe 564 addition of real-time spindle speeds and accessory enable data required
Sergunb 0:8f0d870509fe 565 a bigger buffer. This is to ensure Grbl is performing at optimal levels.
Sergunb 0:8f0d870509fe 566
Sergunb 0:8f0d870509fe 567 - Refactored parts of the spindle and coolant control code to make it
Sergunb 0:8f0d870509fe 568 more consistent to each other and how it was called. It was a little
Sergunb 0:8f0d870509fe 569 messy. The changes made it easier to track what each function call was
Sergunb 0:8f0d870509fe 570 doing based on what was calling it.
Sergunb 0:8f0d870509fe 571
Sergunb 0:8f0d870509fe 572 - Created a couple of new get_state functions for the spindle and
Sergunb 0:8f0d870509fe 573 coolant. These are called by the accessory state report to look
Sergunb 0:8f0d870509fe 574 directly at the pin state, rather than track how it was set. This
Sergunb 0:8f0d870509fe 575 guarantees that the state is reported correctly.
Sergunb 0:8f0d870509fe 576
Sergunb 0:8f0d870509fe 577 - Updated the g-code parser, parking motion, sleep mode, and spindle
Sergunb 0:8f0d870509fe 578 stop calls to refactored spindle and coolant code.
Sergunb 0:8f0d870509fe 579
Sergunb 0:8f0d870509fe 580 - Added a compile-time option to enable homing individual axes, rather
Sergunb 0:8f0d870509fe 581 than having only the main homing cycle. The actual use case for this is
Sergunb 0:8f0d870509fe 582 pretty rare. It’s not recommended you enable this, unless you have a
Sergunb 0:8f0d870509fe 583 specific application for it. Otherwise, just alter the homing cycle
Sergunb 0:8f0d870509fe 584 itself.
Sergunb 0:8f0d870509fe 585
Sergunb 0:8f0d870509fe 586 - Refactored the printFloat() function to not show a decimal point if
Sergunb 0:8f0d870509fe 587 there are no trailing values after it. For example, `1.` now shows `1`.
Sergunb 0:8f0d870509fe 588
Sergunb 0:8f0d870509fe 589 - Fixed an issue regarding spindle speed overrides no being applied to
Sergunb 0:8f0d870509fe 590 blocks without motions.
Sergunb 0:8f0d870509fe 591
Sergunb 0:8f0d870509fe 592 - Removed the toggle_ovr_mask system variable and replaced with
Sergunb 0:8f0d870509fe 593 spindle_stop_ovr system variable. Coolant toggles don’t need to be
Sergunb 0:8f0d870509fe 594 tracked.
Sergunb 0:8f0d870509fe 595
Sergunb 0:8f0d870509fe 596 - Updated README
Sergunb 0:8f0d870509fe 597
Sergunb 0:8f0d870509fe 598
Sergunb 0:8f0d870509fe 599 ----------------
Sergunb 0:8f0d870509fe 600 Date: 2016-10-17
Sergunb 0:8f0d870509fe 601 Author: Will Winder
Sergunb 0:8f0d870509fe 602 Subject: Modify code CSV format. (#10)
Sergunb 0:8f0d870509fe 603
Sergunb 0:8f0d870509fe 604 - Wrap value in quotes to avoid issue with embedded commas. This occurs
Sergunb 0:8f0d870509fe 605 in one of the alarm codes.
Sergunb 0:8f0d870509fe 606
Sergunb 0:8f0d870509fe 607 - Change header row format to allow same parsing code as data rows.
Sergunb 0:8f0d870509fe 608
Sergunb 0:8f0d870509fe 609 ----------------
Sergunb 0:8f0d870509fe 610 Date: 2016-10-12
Sergunb 0:8f0d870509fe 611 Author: chamnit
Sergunb 0:8f0d870509fe 612 Subject: Merge branch 'dev' into edge
Sergunb 0:8f0d870509fe 613
Sergunb 0:8f0d870509fe 614
Sergunb 0:8f0d870509fe 615 ----------------
Sergunb 0:8f0d870509fe 616 Date: 2016-10-12
Sergunb 0:8f0d870509fe 617 Author: chamnit
Sergunb 0:8f0d870509fe 618 Subject: Added settings documentation. Very minor bug fix to step direction handling.
Sergunb 0:8f0d870509fe 619
Sergunb 0:8f0d870509fe 620 - Added v1.1 settings documentation to the markdown folder.
Sergunb 0:8f0d870509fe 621
Sergunb 0:8f0d870509fe 622 - Fixed a very minor bug in the step direction handling upon wakeup.
Sergunb 0:8f0d870509fe 623 The direction mask would temporarily go back to default mask for about
Sergunb 0:8f0d870509fe 624 a millisecond when moving in the same non-default direction. It did not
Sergunb 0:8f0d870509fe 625 effect Grbl behavior before, but fixed for consistency.
Sergunb 0:8f0d870509fe 626
Sergunb 0:8f0d870509fe 627
Sergunb 0:8f0d870509fe 628 ----------------
Sergunb 0:8f0d870509fe 629 Date: 2016-10-12
Sergunb 0:8f0d870509fe 630 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 631 Subject: Spindle speed bug fix.
Sergunb 0:8f0d870509fe 632
Sergunb 0:8f0d870509fe 633 - Spindle speed updating wasn’t working in the g-code parser due to
Sergunb 0:8f0d870509fe 634 some borked up logic on my part. Fixed it and should be operating as
Sergunb 0:8f0d870509fe 635 intended for both normal and laser spindle modes.
Sergunb 0:8f0d870509fe 636
Sergunb 0:8f0d870509fe 637 - Elaborated a little more on the new sleep mode in the documentation.
Sergunb 0:8f0d870509fe 638
Sergunb 0:8f0d870509fe 639
Sergunb 0:8f0d870509fe 640 ----------------
Sergunb 0:8f0d870509fe 641 Date: 2016-10-11
Sergunb 0:8f0d870509fe 642 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 643 Subject: v1.1c: New sleep mode. Laser mode and other bug fixes.
Sergunb 0:8f0d870509fe 644
Sergunb 0:8f0d870509fe 645 - New $SLP sleep mode that will disable spindle, coolant, and stepper
Sergunb 0:8f0d870509fe 646 enable pins. Allows users to disable their steppers without having to
Sergunb 0:8f0d870509fe 647 alter their settings. A reset is required to exit and re-initializes in
Sergunb 0:8f0d870509fe 648 alarm state.
Sergunb 0:8f0d870509fe 649
Sergunb 0:8f0d870509fe 650 - Laser mode wasn’t updating the spindle PWM correctly (effected
Sergunb 0:8f0d870509fe 651 spindle speed overrides) and not checking for modal states either.
Sergunb 0:8f0d870509fe 652 Fixed both issues.
Sergunb 0:8f0d870509fe 653
Sergunb 0:8f0d870509fe 654 - While in laser mode, parking motions are ignored, since the power off
Sergunb 0:8f0d870509fe 655 delay with the retract motion would burn the material. It will just
Sergunb 0:8f0d870509fe 656 turn off and not move. A restore immediately powers up and resumes. No
Sergunb 0:8f0d870509fe 657 delays.
Sergunb 0:8f0d870509fe 658
Sergunb 0:8f0d870509fe 659 - Changing rpm max and min settings did not update the spindle PWM
Sergunb 0:8f0d870509fe 660 calculations. Now fixed.
Sergunb 0:8f0d870509fe 661
Sergunb 0:8f0d870509fe 662 - Increased default planner buffer from 16 to 17 block. It seems to be
Sergunb 0:8f0d870509fe 663 stable, but need to monitor this carefully.
Sergunb 0:8f0d870509fe 664
Sergunb 0:8f0d870509fe 665 - Removed software debounce routine for limit pins. Obsolete.
Sergunb 0:8f0d870509fe 666
Sergunb 0:8f0d870509fe 667 - Fixed a couple parking motion bugs. One related to restoring
Sergunb 0:8f0d870509fe 668 incorrectly and the other the parking rate wasn’t compatible with the
Sergunb 0:8f0d870509fe 669 planner structs.
Sergunb 0:8f0d870509fe 670
Sergunb 0:8f0d870509fe 671 - Fixed a bug caused by refactoring the critical alarms in a recent
Sergunb 0:8f0d870509fe 672 push. Soft limits weren’t invoking a critical alarm.
Sergunb 0:8f0d870509fe 673
Sergunb 0:8f0d870509fe 674 - Updated the documentation with the new sleep feature and added some
Sergunb 0:8f0d870509fe 675 more details to the change summary.
Sergunb 0:8f0d870509fe 676
Sergunb 0:8f0d870509fe 677
Sergunb 0:8f0d870509fe 678 ----------------
Sergunb 0:8f0d870509fe 679 Date: 2016-09-28
Sergunb 0:8f0d870509fe 680 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 681 Subject: New jog cancel real-time command. Parser typo fix from last push.
Sergunb 0:8f0d870509fe 682
Sergunb 0:8f0d870509fe 683 - Added a new jog cancel real-time command. Rather than depending on a
Sergunb 0:8f0d870509fe 684 feed hold to cancel a jogging motion, this realtime command can be used
Sergunb 0:8f0d870509fe 685 instead. The main advantage is if a feed hold is used, you can
Sergunb 0:8f0d870509fe 686 accidentally hold the machine right when Grbl returns to IDLE after
Sergunb 0:8f0d870509fe 687 completing a jog. And the GUI doesn’t have to worry about tracking this
Sergunb 0:8f0d870509fe 688 either.
Sergunb 0:8f0d870509fe 689
Sergunb 0:8f0d870509fe 690 - Fixed a typo in the g-code parser edits from the last push. Was
Sergunb 0:8f0d870509fe 691 causing the G10 set coordinate system command to not work correctly.
Sergunb 0:8f0d870509fe 692
Sergunb 0:8f0d870509fe 693 - Updated the documentation with the jog cancel command.
Sergunb 0:8f0d870509fe 694
Sergunb 0:8f0d870509fe 695
Sergunb 0:8f0d870509fe 696 ----------------
Sergunb 0:8f0d870509fe 697 Date: 2016-09-27
Sergunb 0:8f0d870509fe 698 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 699 Subject: Refactored g-code parser. Saved 60bytes flash and some ram. Edited Readme.
Sergunb 0:8f0d870509fe 700
Sergunb 0:8f0d870509fe 701 - Freed up another 60 bytes of flash and 12-24 bytes of stack RAM by
Sergunb 0:8f0d870509fe 702 using the pre-allocated IJK arc offset vector that is guaranteed to be
Sergunb 0:8f0d870509fe 703 not in use. Only G10 and G28/30 require fetching from EEPROM and
Sergunb 0:8f0d870509fe 704 retaining extra data. Both commands use axis words, which rules out
Sergunb 0:8f0d870509fe 705 G2/3 arcs using IJK offsets existing in same block. Not ideal, but
Sergunb 0:8f0d870509fe 706 every byte helps.
Sergunb 0:8f0d870509fe 707
Sergunb 0:8f0d870509fe 708 - Edited README.
Sergunb 0:8f0d870509fe 709
Sergunb 0:8f0d870509fe 710
Sergunb 0:8f0d870509fe 711 ----------------
Sergunb 0:8f0d870509fe 712 Date: 2016-09-27
Sergunb 0:8f0d870509fe 713 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 714 Subject: Update README and clarifications in jogging document.
Sergunb 0:8f0d870509fe 715
Sergunb 0:8f0d870509fe 716
Sergunb 0:8f0d870509fe 717 ----------------
Sergunb 0:8f0d870509fe 718 Date: 2016-09-26
Sergunb 0:8f0d870509fe 719 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 720 Subject: v1.1b: Tweaked Bf reports, jogging doc, saved another 160 bytes, minor bug fixes
Sergunb 0:8f0d870509fe 721
Sergunb 0:8f0d870509fe 722 - Increment to v1.1b due to status report tweak.
Sergunb 0:8f0d870509fe 723
Sergunb 0:8f0d870509fe 724 - Tweaked the buffer state status reports to show bytes and blocks
Sergunb 0:8f0d870509fe 725 available, rather than in use. This does not require knowing the buffer
Sergunb 0:8f0d870509fe 726 sizes beforehand. It’s implicit.
Sergunb 0:8f0d870509fe 727
Sergunb 0:8f0d870509fe 728 - Also, since buffer states are not used by most devs (after
Sergunb 0:8f0d870509fe 729 inquiries), it is no longer enabled by default and a status mask option
Sergunb 0:8f0d870509fe 730 was added for this.
Sergunb 0:8f0d870509fe 731
Sergunb 0:8f0d870509fe 732 - Fixed some typos and updated for the report tweak in the
Sergunb 0:8f0d870509fe 733 documentation.
Sergunb 0:8f0d870509fe 734
Sergunb 0:8f0d870509fe 735 - Wrote a joystick implementation concept in the jogging markdown
Sergunb 0:8f0d870509fe 736 document. Outlines how to get a low-latency feel to a joystick (and
Sergunb 0:8f0d870509fe 737 other input devices).
Sergunb 0:8f0d870509fe 738
Sergunb 0:8f0d870509fe 739 - Removed XON/XOFF support. It’s not used by anyone because of its
Sergunb 0:8f0d870509fe 740 inherent problems. Remains in older versions for reference.
Sergunb 0:8f0d870509fe 741
Sergunb 0:8f0d870509fe 742 - Added a compile option on how to handle the probe position during a
Sergunb 0:8f0d870509fe 743 check mode.
Sergunb 0:8f0d870509fe 744
Sergunb 0:8f0d870509fe 745 - Fixed a jogging bug. If G93 is the modal state before a jogging
Sergunb 0:8f0d870509fe 746 motion, the feed rate did not get calculated correctly. Fixed the issue.
Sergunb 0:8f0d870509fe 747
Sergunb 0:8f0d870509fe 748 - Refactored some code to save another 160+ bytes. Included an improved
Sergunb 0:8f0d870509fe 749 float vector comparison macro and reducing a few large and repetitive
Sergunb 0:8f0d870509fe 750 function calls.
Sergunb 0:8f0d870509fe 751
Sergunb 0:8f0d870509fe 752 - Fixed a probing bug (existing in v0.9 too) where the target positions
Sergunb 0:8f0d870509fe 753 were not set correct and error handling was improper.
Sergunb 0:8f0d870509fe 754
Sergunb 0:8f0d870509fe 755
Sergunb 0:8f0d870509fe 756 ----------------
Sergunb 0:8f0d870509fe 757 Date: 2016-09-25
Sergunb 0:8f0d870509fe 758 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 759 Subject: Addressed much larger flash size with avr-gcc v4.9.2. Refactored reports to save 160KB.
Sergunb 0:8f0d870509fe 760
Sergunb 0:8f0d870509fe 761 - The newest Arduino IDE 1.6.12 has recently updated to avr-gcc v4.9.2.
Sergunb 0:8f0d870509fe 762 Unfortunately, it produces a compiled size almost 0.7KB to 1KB larger
Sergunb 0:8f0d870509fe 763 than prior versions! This can easily cause the base build to exceed the
Sergunb 0:8f0d870509fe 764 Arduino Duemilanove/Nano flash limit of 30.5KB. The Arduino Uno seems
Sergunb 0:8f0d870509fe 765 to be ok still with its 31.5KB flash limit.
Sergunb 0:8f0d870509fe 766
Sergunb 0:8f0d870509fe 767 - Makefile `-flto` compile flag added to cut down on the horrible flash
Sergunb 0:8f0d870509fe 768 size when using the new avr-gcc. (Edit Makefile and remove comment on
Sergunb 0:8f0d870509fe 769 COMPILE definition). This brings it in-line with what the IDE produces.
Sergunb 0:8f0d870509fe 770
Sergunb 0:8f0d870509fe 771 - Functionalized repetitive tasks in report.c to try to reduce overall
Sergunb 0:8f0d870509fe 772 flash size. Successfully cut down about 160bytes.
Sergunb 0:8f0d870509fe 773
Sergunb 0:8f0d870509fe 774 - Removed printFloat_SettingValue() and printFloat_RPMValue()
Sergunb 0:8f0d870509fe 775 functions. These aren’t required and can be replaced with a direct call
Sergunb 0:8f0d870509fe 776 to printFloat() because they don’t require a unit conversion check.
Sergunb 0:8f0d870509fe 777
Sergunb 0:8f0d870509fe 778
Sergunb 0:8f0d870509fe 779 ----------------
Sergunb 0:8f0d870509fe 780 Date: 2016-09-24
Sergunb 0:8f0d870509fe 781 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 782 Subject: Serial RX count bug fix. Settings codes CSV. More documentation.
Sergunb 0:8f0d870509fe 783
Sergunb 0:8f0d870509fe 784 - Reverted back the serial RX count function to how it was. The
Sergunb 0:8f0d870509fe 785 variable type was unsigned and cause an integer underflow whenever the
Sergunb 0:8f0d870509fe 786 calculation produced a negative number. The old way was the correct way.
Sergunb 0:8f0d870509fe 787
Sergunb 0:8f0d870509fe 788 - Lots of minor edits to the code CSVs and markdown documents.
Sergunb 0:8f0d870509fe 789
Sergunb 0:8f0d870509fe 790 - Expanded on explaining feedback messages and startup line execution
Sergunb 0:8f0d870509fe 791 feedback.
Sergunb 0:8f0d870509fe 792
Sergunb 0:8f0d870509fe 793 - Created a new settings codes CSV to help GUIs import the values and
Sergunb 0:8f0d870509fe 794 meanings.
Sergunb 0:8f0d870509fe 795
Sergunb 0:8f0d870509fe 796
Sergunb 0:8f0d870509fe 797 ----------------
Sergunb 0:8f0d870509fe 798 Date: 2016-09-22
Sergunb 0:8f0d870509fe 799 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 800 Subject: Increment to v1.1a, minor compile bug fix, tweaked communication protocol, more docs.
Sergunb 0:8f0d870509fe 801
Sergunb 0:8f0d870509fe 802 - Incremented to v1.1a, rather than keep 1.0e. This is because there
Sergunb 0:8f0d870509fe 803 are existing v1.0 installations. Don’t want to confuse people further.
Sergunb 0:8f0d870509fe 804
Sergunb 0:8f0d870509fe 805 - Certain version of the Arduino IDE did not like the `inline` in the
Sergunb 0:8f0d870509fe 806 function header. Removed from spindle_control files to fix the problem.
Sergunb 0:8f0d870509fe 807
Sergunb 0:8f0d870509fe 808 - Tweaked the communication protocol slightly. Added message type
Sergunb 0:8f0d870509fe 809 indicators for all `[]`bracketed feedback messages. It’s been
Sergunb 0:8f0d870509fe 810 problematic for GUI dev to try to determine the context of a message
Sergunb 0:8f0d870509fe 811 and how it should be handled. These indictors should help tremendously
Sergunb 0:8f0d870509fe 812 to remove context all together.
Sergunb 0:8f0d870509fe 813
Sergunb 0:8f0d870509fe 814 - Also altered how `$N` startup lines are presented when executed. They
Sergunb 0:8f0d870509fe 815 now start with an open chevron ‘>’ followed by the line and an ‘:ok’ to
Sergunb 0:8f0d870509fe 816 indicate it executed. The ‘ok’ is on the same line intentionally so it
Sergunb 0:8f0d870509fe 817 doesn’t mess up a streaming protocol counter.
Sergunb 0:8f0d870509fe 818
Sergunb 0:8f0d870509fe 819 - Managed to save a 100+KB from refactoring parts of report.c. (Thanks
Sergunb 0:8f0d870509fe 820 Vasilis!) Freed up room to alter the protocol a little.
Sergunb 0:8f0d870509fe 821
Sergunb 0:8f0d870509fe 822 - Wrote a markdown document on interface messaging to make it clear how
Sergunb 0:8f0d870509fe 823 it’s intended to work. See interface.md in /doc/markdown
Sergunb 0:8f0d870509fe 824
Sergunb 0:8f0d870509fe 825 - Started to pull in some Wiki pages from the old grbl site and
Sergunb 0:8f0d870509fe 826 beginning to update them for v1.1.
Sergunb 0:8f0d870509fe 827
Sergunb 0:8f0d870509fe 828 - Created new commit log for v1.1.
Sergunb 0:8f0d870509fe 829
Sergunb 0:8f0d870509fe 830
Sergunb 0:8f0d870509fe 831 ----------------
Sergunb 0:8f0d870509fe 832 Date: 2016-09-22
Sergunb 0:8f0d870509fe 833 Author: Sonny Jeon
Sergunb 0:8f0d870509fe 834 Subject: Merge pull request #1 from winder/dev
Sergunb 0:8f0d870509fe 835
Sergunb 0:8f0d870509fe 836 Add locale to code CSVs.
Sergunb 0:8f0d870509fe 837
Sergunb 0:8f0d870509fe 838 ----------------
Sergunb 0:8f0d870509fe 839 Date: 2016-09-22
Sergunb 0:8f0d870509fe 840 Author: winder
Sergunb 0:8f0d870509fe 841 Subject: Add locale to code CSVs.
Sergunb 0:8f0d870509fe 842
Sergunb 0:8f0d870509fe 843
Sergunb 0:8f0d870509fe 844 ----------------
Sergunb 0:8f0d870509fe 845 Date: 2016-09-21
Sergunb 0:8f0d870509fe 846 Author: chamnit
Sergunb 0:8f0d870509fe 847 Subject: Grbl v1.0e huge beta release. Overrides and new reporting.
Sergunb 0:8f0d870509fe 848
Sergunb 0:8f0d870509fe 849 - Feature: Realtime feed, rapid, and spindle speed overrides. These
Sergunb 0:8f0d870509fe 850 alter the running machine state within tens of milliseconds!
Sergunb 0:8f0d870509fe 851 - Feed override: 100%, +/-10%, +/-1% commands with values 1-200% of
Sergunb 0:8f0d870509fe 852 programmed feed
Sergunb 0:8f0d870509fe 853 - Rapid override: 100%, 50%, 25% rapid rate commands
Sergunb 0:8f0d870509fe 854 - Spindle speed override: 100%, +/-10%, +/-1% commands with values
Sergunb 0:8f0d870509fe 855 50-200% of programmed speed
Sergunb 0:8f0d870509fe 856 - Override values have configurable limits and increments in
Sergunb 0:8f0d870509fe 857 config.h.
Sergunb 0:8f0d870509fe 858 - Feature: Realtime toggle overrides for spindle stop, flood coolant,
Sergunb 0:8f0d870509fe 859 and optionally mist coolant
Sergunb 0:8f0d870509fe 860 - Spindle stop: Enables and disables spindle during a feed hold.
Sergunb 0:8f0d870509fe 861 Automatically restores last spindles state.
Sergunb 0:8f0d870509fe 862 - Flood and mist coolant: Immediately toggles coolant state until
Sergunb 0:8f0d870509fe 863 next toggle or g-code coolant command.
Sergunb 0:8f0d870509fe 864 - Feature: Jogging mode! Incremental and absolute modes supported.
Sergunb 0:8f0d870509fe 865 - Grbl accepts jogging-specific commands like $J=X100F50. An axis
Sergunb 0:8f0d870509fe 866 word and feed rate are required. G20/21 and G90/G91 commands are
Sergunb 0:8f0d870509fe 867 accepted.
Sergunb 0:8f0d870509fe 868 - Jog motions can be canceled at any time by a feed hold `!`
Sergunb 0:8f0d870509fe 869 command. The buffer is automatically flushed. (No resetting required).
Sergunb 0:8f0d870509fe 870 - Jog motions do not alter the g-code parser state so GUIs don’t
Sergunb 0:8f0d870509fe 871 have to track what they changed and correct it.
Sergunb 0:8f0d870509fe 872 - Feature: Laser mode setting. Allows Grbl to execute continuous
Sergunb 0:8f0d870509fe 873 motions with spindle speed and state changes.
Sergunb 0:8f0d870509fe 874 - Feature: Significantly improved status reports. Overhauled to cram in
Sergunb 0:8f0d870509fe 875 more meaningful data and still make it smaller on average.
Sergunb 0:8f0d870509fe 876 - All available data is now sent by default, but does not appear if
Sergunb 0:8f0d870509fe 877 it doesn’t change or is not active.
Sergunb 0:8f0d870509fe 878 - Machine position(MPos) or work position(WPos) is reported but not
Sergunb 0:8f0d870509fe 879 both at the same time. Instead, the work coordinate offsets (WCO)are
Sergunb 0:8f0d870509fe 880 sent intermittently whenever it changes or refreshes after 10-30 status
Sergunb 0:8f0d870509fe 881 reports. Position vectors are easily computed by WPos = MPos - WCO.
Sergunb 0:8f0d870509fe 882 - All data has changed in some way. Details of changes are in the
Sergunb 0:8f0d870509fe 883 markdown documents and wiki.
Sergunb 0:8f0d870509fe 884 - Feature: 16 new realtime commands to control overrides. All in
Sergunb 0:8f0d870509fe 885 extended-ASCII character space.
Sergunb 0:8f0d870509fe 886 - While they are not easily typeable and requires a GUI, they can’t
Sergunb 0:8f0d870509fe 887 be accidentally triggered by some latent character in the g-code
Sergunb 0:8f0d870509fe 888 program and have tons of room for expansion.
Sergunb 0:8f0d870509fe 889 - Feature: New substates for HOLD and SAFETY DOOR. A `:x` is appended
Sergunb 0:8f0d870509fe 890 to the state, where `x` is an integer and indicates a substate.
Sergunb 0:8f0d870509fe 891 - For example, each integer of a door state describes in what phase
Sergunb 0:8f0d870509fe 892 the machine is in during parking. Substates are detailed in the
Sergunb 0:8f0d870509fe 893 documentation.
Sergunb 0:8f0d870509fe 894 - Feature: With the alarm codes, homing and probe alarms have been
Sergunb 0:8f0d870509fe 895 expanded with more codes to provide more exact feedback on what caused
Sergunb 0:8f0d870509fe 896 the alarm.
Sergunb 0:8f0d870509fe 897 - Feature: New hard limit check upon power-up or reset. If detected, a
Sergunb 0:8f0d870509fe 898 feedback message to check the limit switches sent immediately after the
Sergunb 0:8f0d870509fe 899 welcome message.
Sergunb 0:8f0d870509fe 900 - May be disabled in config.h.
Sergunb 0:8f0d870509fe 901
Sergunb 0:8f0d870509fe 902 - OEM feature: Enable/disable `$RST=` individual commands based on
Sergunb 0:8f0d870509fe 903 desired behavior in config.h.
Sergunb 0:8f0d870509fe 904 - OEM feature: Configurable EEPROM wipe to prevent certain data from
Sergunb 0:8f0d870509fe 905 being deleted during firmware upgrade to a new settings version or
Sergunb 0:8f0d870509fe 906 `RST=*` command.
Sergunb 0:8f0d870509fe 907 - OEM feature: Enable/disable the `$I=` build info write string with
Sergunb 0:8f0d870509fe 908 external EEPROM write example sketch.
Sergunb 0:8f0d870509fe 909 - This prevents a user from altering the build info string in
Sergunb 0:8f0d870509fe 910 EEPROM. This requires the vendor to write the string to EEPROM via
Sergunb 0:8f0d870509fe 911 external means. An Arduino example sketch is provided to accomplish
Sergunb 0:8f0d870509fe 912 this. This would be useful for contain product data that is
Sergunb 0:8f0d870509fe 913 retrievable.
Sergunb 0:8f0d870509fe 914
Sergunb 0:8f0d870509fe 915 - Tweak: All feedback has been drastically trimmed to free up flash
Sergunb 0:8f0d870509fe 916 space for the v1.0 release.
Sergunb 0:8f0d870509fe 917 - The `$` help message is just one string, listing available
Sergunb 0:8f0d870509fe 918 commands.
Sergunb 0:8f0d870509fe 919 - The `$$` settings printout no longer includes descriptions. Only
Sergunb 0:8f0d870509fe 920 the setting values. (Sorry it’s this or remove overrides!)
Sergunb 0:8f0d870509fe 921 - Grbl `error:` and `ALARM:` responses now only contain codes. No
Sergunb 0:8f0d870509fe 922 descriptions. All codes are explained in documentation.
Sergunb 0:8f0d870509fe 923 - Grbl’s old feedback style may be restored via a config.h, but
Sergunb 0:8f0d870509fe 924 keep in mind that it will likely not fit into the Arduino’s flash space.
Sergunb 0:8f0d870509fe 925 - Tweak: Grbl now forces a buffer sync or stop motion whenever a g-code
Sergunb 0:8f0d870509fe 926 command needs to update and write a value to EEPROM or changes the work
Sergunb 0:8f0d870509fe 927 coordinate offset.
Sergunb 0:8f0d870509fe 928 - This addresses two old issues in all prior Grbl versions. First,
Sergunb 0:8f0d870509fe 929 an EEPROM write requires interrupts to be disabled, including stepper
Sergunb 0:8f0d870509fe 930 and serial comm. Steps can be lost and data can be corrupted. Second,
Sergunb 0:8f0d870509fe 931 the work position may not be correlated to the actual machine position,
Sergunb 0:8f0d870509fe 932 since machine position is derived from the actual current execution
Sergunb 0:8f0d870509fe 933 state, while work position is based on the g-code parser offset state.
Sergunb 0:8f0d870509fe 934 They are usually not in sync and the parser state is several motions
Sergunb 0:8f0d870509fe 935 behind. This forced sync ensures work and machine positions are always
Sergunb 0:8f0d870509fe 936 correct.
Sergunb 0:8f0d870509fe 937 - This behavior can be disabled through a config.h option, but it’s
Sergunb 0:8f0d870509fe 938 not recommended to do so.
Sergunb 0:8f0d870509fe 939 - Tweak: To make status reports standardized, users can no longer
Sergunb 0:8f0d870509fe 940 change what is reported via status report mask, except for only
Sergunb 0:8f0d870509fe 941 toggling machine or work positions.
Sergunb 0:8f0d870509fe 942 - All other data fields are included in the report and can only be
Sergunb 0:8f0d870509fe 943 disabled through the config.h file. It’s not recommended to alter this,
Sergunb 0:8f0d870509fe 944 because GUIs will be expecting this data to be present and may not be
Sergunb 0:8f0d870509fe 945 compatible.
Sergunb 0:8f0d870509fe 946 - Tweak: Homing cycle and parking motion no longer report a negative
Sergunb 0:8f0d870509fe 947 line number in a status report. These will now not report a line number
Sergunb 0:8f0d870509fe 948 at all.
Sergunb 0:8f0d870509fe 949 - Tweak: New `[Restoring spindle]` message when restoring from a
Sergunb 0:8f0d870509fe 950 spindle stop override. Provides feedback what Grbl is doing while the
Sergunb 0:8f0d870509fe 951 spindle is powering up and a 4.0 second delay is enforced.
Sergunb 0:8f0d870509fe 952 - Tweak: Override values are reset to 100% upon M2/30. This behavior
Sergunb 0:8f0d870509fe 953 can be disabled in config.h
Sergunb 0:8f0d870509fe 954 - Tweak: The planner buffer size has been reduced from 18 to 16 to free
Sergunb 0:8f0d870509fe 955 up RAM for tracking and controlling overrides.
Sergunb 0:8f0d870509fe 956 - Tweak: TX buffer size has been increased from 64 to 90 bytes to
Sergunb 0:8f0d870509fe 957 improve status reporting and overall performance.
Sergunb 0:8f0d870509fe 958 - Tweak: Removed the MOTION CANCEL state. It was redundant and didn’t
Sergunb 0:8f0d870509fe 959 affect Grbl’s overall operation by doing so.
Sergunb 0:8f0d870509fe 960 - Tweak: Grbl’s serial buffer increased by +1 internally, such that 128
Sergunb 0:8f0d870509fe 961 bytes means 128, not 127 due to the ring buffer implementation. Long
Sergunb 0:8f0d870509fe 962 overdue.
Sergunb 0:8f0d870509fe 963 - Tweak: Altered sys.alarm variable to be set by alarm codes, rather
Sergunb 0:8f0d870509fe 964 than bit flags. Simplified how it worked overall.
Sergunb 0:8f0d870509fe 965 - Tweak: Planner buffer and serial RX buffer usage has been combined in
Sergunb 0:8f0d870509fe 966 the status reports.
Sergunb 0:8f0d870509fe 967 - Tweak: Pin state reporting has been refactored to report only the
Sergunb 0:8f0d870509fe 968 pins “triggered” and nothing when not “triggered”.
Sergunb 0:8f0d870509fe 969 - Tweak: Current machine rate or speed is now included in every report.
Sergunb 0:8f0d870509fe 970 - Tweak: The work coordinate offset (WCO) and override states only need
Sergunb 0:8f0d870509fe 971 to be refreshed intermittently or reported when they change. The
Sergunb 0:8f0d870509fe 972 refresh rates may be altered for each in the config.h file with
Sergunb 0:8f0d870509fe 973 different idle and busy rates to lessen Grbl’s load during a job.
Sergunb 0:8f0d870509fe 974 - Tweak: For temporary compatibility to existing GUIs until they are
Sergunb 0:8f0d870509fe 975 updated, an option to revert back to the old style status reports is
Sergunb 0:8f0d870509fe 976 available in config.h, but not recommended for long term use.
Sergunb 0:8f0d870509fe 977 - Tweak: Removed old limit pin state reporting option from config.h in
Sergunb 0:8f0d870509fe 978 lieu of new status report that includes them.
Sergunb 0:8f0d870509fe 979 - Tweak: Updated the defaults.h file to include laser mode, altered
Sergunb 0:8f0d870509fe 980 status report mask, and fix an issue with a missing invert probe pin
Sergunb 0:8f0d870509fe 981 default.
Sergunb 0:8f0d870509fe 982
Sergunb 0:8f0d870509fe 983 - Refactor: Changed how planner line data is generated and passed to
Sergunb 0:8f0d870509fe 984 the planner and onto the step generator. By making it a struct
Sergunb 0:8f0d870509fe 985 variable, this saved significant flash space.
Sergunb 0:8f0d870509fe 986 - Refactor: Major re-factoring of the planner to incorporate override
Sergunb 0:8f0d870509fe 987 values and allow for re-calculations fast enough to immediately take
Sergunb 0:8f0d870509fe 988 effect during operation. No small feat.
Sergunb 0:8f0d870509fe 989 - Refactor: Re-factored the step segment generator for re-computing new
Sergunb 0:8f0d870509fe 990 override states.
Sergunb 0:8f0d870509fe 991 - Refactor: Re-factored spindle_control.c to accommodate the spindle
Sergunb 0:8f0d870509fe 992 speed overrides and laser mode.
Sergunb 0:8f0d870509fe 993 - Refactor: Re-factored parts of the codebase for a new jogging mode.
Sergunb 0:8f0d870509fe 994 Still under development though and slated to be part of the official
Sergunb 0:8f0d870509fe 995 v1.0 release. Hang tight.
Sergunb 0:8f0d870509fe 996 - Refactor: Created functions for computing a unit vector and value
Sergunb 0:8f0d870509fe 997 limiting based on axis maximums to free up more flash.
Sergunb 0:8f0d870509fe 998 - Refactor: The spindle PWM is now set directly inside of the stepper
Sergunb 0:8f0d870509fe 999 ISR as it loads new step segments.
Sergunb 0:8f0d870509fe 1000 - Refactor: Moved machine travel checks out of soft limits function
Sergunb 0:8f0d870509fe 1001 into its own since jogging uses this too.
Sergunb 0:8f0d870509fe 1002 - Refactor: Removed coolant_stop() and combined with
Sergunb 0:8f0d870509fe 1003 coolant_set_state().
Sergunb 0:8f0d870509fe 1004 - Refactor: The serial RX ISR forks off extended ASCII values to
Sergunb 0:8f0d870509fe 1005 quickly assess the new override realtime commands.
Sergunb 0:8f0d870509fe 1006 - Refactor: Altered some names of the step control flags.
Sergunb 0:8f0d870509fe 1007 - Refactor: Improved efficiency of the serial RX get buffer count
Sergunb 0:8f0d870509fe 1008 function.
Sergunb 0:8f0d870509fe 1009 - Refactor: Saved significant flash by removing and combining print
Sergunb 0:8f0d870509fe 1010 functions. Namely the uint8 base10 and base2 functions.
Sergunb 0:8f0d870509fe 1011 - Refactor: Moved the probe state check in the main stepper ISR to
Sergunb 0:8f0d870509fe 1012 improve its efficiency.
Sergunb 0:8f0d870509fe 1013 - Refactor: Single character printPgmStrings() went converted to direct
Sergunb 0:8f0d870509fe 1014 serial_write() commands to save significant flash space.
Sergunb 0:8f0d870509fe 1015
Sergunb 0:8f0d870509fe 1016 - Documentation: Detailed Markdown documents on error codes, alarm
Sergunb 0:8f0d870509fe 1017 codes, messages, new real-time commands, new status reports, and how
Sergunb 0:8f0d870509fe 1018 jogging works. More to come later and will be posted on the Wiki as
Sergunb 0:8f0d870509fe 1019 well.
Sergunb 0:8f0d870509fe 1020 - Documentation: CSV files for quick importing of Grbl error and alarm
Sergunb 0:8f0d870509fe 1021 codes.
Sergunb 0:8f0d870509fe 1022
Sergunb 0:8f0d870509fe 1023 - Bug Fix: Applied v0.9 master fixes to CoreXY homing.
Sergunb 0:8f0d870509fe 1024 - Bug Fix: The print float function would cause Grbl to crash if a
Sergunb 0:8f0d870509fe 1025 value was 1e6 or greater. Increased the buffer by 3 bytes to help
Sergunb 0:8f0d870509fe 1026 prevent this in the future.
Sergunb 0:8f0d870509fe 1027 - Bug Fix: Build info and startup string EEPROM restoring was not
Sergunb 0:8f0d870509fe 1028 writing the checksum value.
Sergunb 0:8f0d870509fe 1029 - Bug Fix: Corrected an issue with safety door restoring the proper
Sergunb 0:8f0d870509fe 1030 spindle and coolant state. It worked before, but breaks with laser mode
Sergunb 0:8f0d870509fe 1031 that can continually change spindle state per planner block.
Sergunb 0:8f0d870509fe 1032 - Bug Fix: Move system position and probe position arrays out of the
Sergunb 0:8f0d870509fe 1033 system_t struct. Ran into some compiling errors that were hard to track
Sergunb 0:8f0d870509fe 1034 down as to why. Moving them out fixed it.
Sergunb 0:8f0d870509fe 1035