clinton/Smoothieware.git
6 years agoRemove Report for testing
James Richters [Sat, 31 Mar 2018 00:17:19 +0000 (20:17 -0400)]
Remove Report for testing

6 years agoUse Arc_Milestone for arc calculations - improve accuracy of rt_axis0 and rt_axis1
James Richters [Fri, 30 Mar 2018 23:31:31 +0000 (19:31 -0400)]
Use Arc_Milestone for arc calculations - improve accuracy of rt_axis0 and rt_axis1

Also added more tests for comparison in the temporary report

6 years agoPut diagnostic info back in
James Richters [Fri, 30 Mar 2018 20:51:44 +0000 (16:51 -0400)]
Put diagnostic info back in

6 years agoMerge remote-tracking branch 'Smoothieware/edge' into Arc_Diagnosetic2
James Richters [Fri, 30 Mar 2018 20:48:48 +0000 (16:48 -0400)]
Merge remote-tracking branch 'Smoothieware/edge' into Arc_Diagnosetic2

6 years agoMerge pull request #1295 from Smoothieware/add/arc_milestone
Jim Morris [Fri, 30 Mar 2018 19:16:47 +0000 (20:16 +0100)]
Merge pull request #1295 from Smoothieware/add/arc_milestone

added arc_milestone

6 years agoadded arc_milestone
Jim Morris [Fri, 30 Mar 2018 19:15:04 +0000 (20:15 +0100)]
added arc_milestone

6 years agoMerge pull request #1294 from wolfmanjm/upstreamedge
Jim Morris [Fri, 30 Mar 2018 10:38:29 +0000 (11:38 +0100)]
Merge pull request #1294 from wolfmanjm/upstreamedge

revert PR #1293

6 years agoRevert "Merge pull request #1293 from Zaaphod/Missing_Arcs"
Jim Morris [Fri, 30 Mar 2018 10:35:30 +0000 (11:35 +0100)]
Revert "Merge pull request #1293 from Zaaphod/Missing_Arcs"

This reverts commit 2ed924ed1e5bc6ae2f341f8c22ec3bf3c85c6476, reversing
changes made to 573ed7c0c719008075acb1d36850e718a2707372.

6 years agoRevert "Update Robot.cpp"
Jim Morris [Fri, 30 Mar 2018 10:29:35 +0000 (11:29 +0100)]
Revert "Update Robot.cpp"

This reverts commit 402a31afb0efab312e3fc2e51d6b3954246c9631.

6 years agoUpdate Robot.cpp
Jim Morris [Fri, 30 Mar 2018 09:00:03 +0000 (10:00 +0100)]
Update Robot.cpp

replace and with &&

6 years agoMerge pull request #1293 from Zaaphod/Missing_Arcs
Jim Morris [Fri, 30 Mar 2018 08:58:17 +0000 (09:58 +0100)]
Merge pull request #1293 from Zaaphod/Missing_Arcs

Improvements to G2/G3 Arcs

6 years agoRemove diagnostic output to console and add comments
James Richters [Thu, 29 Mar 2018 22:06:36 +0000 (18:06 -0400)]
Remove diagnostic output to console and add comments

6 years agoAdd test tor full circles and only perform atan2 if not a full circle. fix correctio...
James Richters [Wed, 28 Mar 2018 12:24:27 +0000 (08:24 -0400)]
Add test tor full circles and only perform atan2 if not a full circle.  fix correction for atan2 to prevent accidental giant circles

Modify dignostic output and perform both old and new atan corrections to see the difference.

6 years agofix offset
Jim Morris [Tue, 27 Mar 2018 14:26:14 +0000 (15:26 +0100)]
fix offset

6 years agoactually improve the probe result panel screen
Jim Morris [Tue, 27 Mar 2018 14:06:47 +0000 (15:06 +0100)]
actually improve the probe result panel screen

6 years agoDiagnostic variables sent to console for evaluation
James Richters [Mon, 26 Mar 2018 23:51:31 +0000 (19:51 -0400)]
Diagnostic variables sent to console for evaluation

6 years agoclean up cnc panel probe output
Jim Morris [Mon, 26 Mar 2018 20:48:14 +0000 (21:48 +0100)]
clean up cnc panel probe output

6 years agoAdd max_speed parameter and M203 Sxxx to set maximum feedrate
Jim Morris [Fri, 23 Mar 2018 09:16:43 +0000 (09:16 +0000)]
Add max_speed parameter and M203 Sxxx to set maximum feedrate

6 years agocall on_idle
Jim Morris [Tue, 13 Mar 2018 18:48:28 +0000 (18:48 +0000)]
call on_idle

fixes issue #1286

6 years agoUpdate config edge
Jim Morris [Thu, 8 Mar 2018 11:24:27 +0000 (11:24 +0000)]
Update config

6 years agoMerge pull request #1282 from wolfmanjm/upstreamedge
Jim Morris [Wed, 7 Mar 2018 20:22:28 +0000 (20:22 +0000)]
Merge pull request #1282 from wolfmanjm/upstreamedge

Allow G38 to do arbitrary move to xyz

6 years agoAllow G38 to do arbitrary move to xyz
Jim Morris [Wed, 7 Mar 2018 20:08:13 +0000 (20:08 +0000)]
Allow G38 to do arbitrary move to xyz

6 years agoMerge pull request #1281 from wolfmanjm/upstreamedge
Jim Morris [Wed, 7 Mar 2018 14:57:12 +0000 (14:57 +0000)]
Merge pull request #1281 from wolfmanjm/upstreamedge

fix percent complete for panels

6 years agoFIx percent progress for panels
Jim Morris [Wed, 7 Mar 2018 14:55:08 +0000 (14:55 +0000)]
FIx percent progress for panels

6 years agofix up some style issues in the laser PR
Jim Morris [Mon, 5 Mar 2018 14:52:40 +0000 (14:52 +0000)]
fix up some style issues in the laser PR

6 years agoMerge pull request #1278 from wolfmanjm/upstreamedge
Jim Morris [Mon, 5 Mar 2018 14:50:08 +0000 (14:50 +0000)]
Merge pull request #1278 from wolfmanjm/upstreamedge

fix bad formatting from laser PR

6 years agofix bad formattingfrom PR
Jim Morris [Mon, 5 Mar 2018 14:47:35 +0000 (14:47 +0000)]
fix bad formattingfrom PR

6 years agoMerge pull request #1277 from nuclearcat/edge
Jim Morris [Mon, 5 Mar 2018 14:20:16 +0000 (14:20 +0000)]
Merge pull request #1277 from nuclearcat/edge

Add more safety to laser testing by optional duration parameter and s…

6 years agoFixing compile warnings, sorry
Denys Fedoryshchenko [Mon, 5 Mar 2018 00:10:29 +0000 (02:10 +0200)]
Fixing compile warnings, sorry

6 years agoProperly handling when PWM frequency is slower than 1khz
Denys Fedoryshchenko [Mon, 5 Mar 2018 00:04:53 +0000 (02:04 +0200)]
Properly handling when PWM frequency is slower than 1khz

6 years agoAdd more safety to laser testing by optional duration parameter and status query
Denys Fedoryshchenko [Sun, 4 Mar 2018 04:22:02 +0000 (06:22 +0200)]
Add more safety to laser testing by optional duration parameter and status query

6 years agoupdate latest bins
Jim Morris [Fri, 2 Mar 2018 11:22:15 +0000 (11:22 +0000)]
update latest bins

6 years agoMerge pull request #1276 from wolfmanjm/upstreamedge
Jim Morris [Fri, 2 Mar 2018 11:20:11 +0000 (11:20 +0000)]
Merge pull request #1276 from wolfmanjm/upstreamedge

return Error on exceeding soft limit

6 years agoreturn Error on exceeding soft limit
Jim Morris [Fri, 2 Mar 2018 11:17:47 +0000 (11:17 +0000)]
return Error on exceeding soft limit

6 years agoMerge pull request #1149 from Smoothieware/feature/soft-endstops
Jim Morris [Thu, 1 Mar 2018 22:33:22 +0000 (22:33 +0000)]
Merge pull request #1149 from Smoothieware/feature/soft-endstops

Feature/soft endstops

6 years agoMerge pull request #1274 from ahmetipkin/edge
Jim Morris [Thu, 1 Mar 2018 16:26:57 +0000 (16:26 +0000)]
Merge pull request #1274 from ahmetipkin/edge

Compansation dampening functionality is added

6 years agoFixed indentation and braces
Ipkin, Ahmet [Thu, 1 Mar 2018 16:13:45 +0000 (17:13 +0100)]
Fixed indentation and braces

6 years agoDeleted the bogus files.
Ipkin, Ahmet [Thu, 1 Mar 2018 15:25:09 +0000 (16:25 +0100)]
Deleted the bogus files.

6 years agoMade the Compansation Dampening as optional
Ipkin, Ahmet [Thu, 1 Mar 2018 14:44:01 +0000 (15:44 +0100)]
Made the Compansation Dampening as optional

If the config values are not set; the compansation dampening is shut down; so the compansation is applied everywhere - like the old behaviour

If you want to enable it; you should define both of

leveling-strategy.rectangular-grid.height_limit
leveling-strategy.rectangular-grid.dampening_start

configs.

6 years agoMerge pull request #1275 from Zaaphod/Probe-G20
Jim Morris [Thu, 1 Mar 2018 08:53:56 +0000 (08:53 +0000)]
Merge pull request #1275 from Zaaphod/Probe-G20

Display results of probe in inches if in G20 mode

6 years agoDisplay results of probe in inches if in G20 mode
James Richters [Thu, 1 Mar 2018 02:48:30 +0000 (21:48 -0500)]
Display results of probe in inches if in G20 mode

6 years agoAdded compensation degragation function for rectangular grid
Ahmet Ipkin [Thu, 1 Mar 2018 02:02:32 +0000 (03:02 +0100)]
Added compensation degragation function for rectangular grid

Now the compensation is not applied always - rather is applied only for limited amount (like Repetier firmware does). In order to configure it, you add two new configs:
leveling-strategy.rectangular-grid.height_limit <height_limit>
leveling-strategy.rectangular-grid.dampening_start <start limit>

Basically what it does is; until Z axis is below 'start limit', any compensation that would be applied is applied as is (full power). However, after this 'start limit' is hit, until 'height limit' is reached, the compensation is dampened gradually (linearly) from full power to none (i.e. no compensation after 'height limit' is passed)

Main reason for this is: we generally use Mesh bed leveling for compensating our non-flat beds; but generally after first few layers; the extruded plastic can cover for this bent; and it is no longer needed.

6 years agofix merge
Jim Morris [Mon, 26 Feb 2018 17:31:46 +0000 (17:31 +0000)]
fix merge

Merge remote-tracking branch 'upstream/edge' into feature/soft-endstops

6 years agoMerge remote-tracking branch 'upstream/edge' into feature/soft-endstops
Jim Morris [Mon, 26 Feb 2018 17:04:05 +0000 (17:04 +0000)]
Merge remote-tracking branch 'upstream/edge' into feature/soft-endstops

6 years agoupdate latest bins
Jim Morris [Mon, 26 Feb 2018 11:26:41 +0000 (11:26 +0000)]
update latest bins

6 years agoMerge pull request #1272 from wolfmanjm/upstreamedge
Jim Morris [Sun, 25 Feb 2018 20:49:46 +0000 (20:49 +0000)]
Merge pull request #1272 from wolfmanjm/upstreamedge

fix arc generation for tiny arcs

6 years agofix arc generation for tiny arcs
Jim Morris [Sun, 25 Feb 2018 20:44:40 +0000 (20:44 +0000)]
fix arc generation for tiny arcs

6 years agoMerge pull request #1270 from wolfmanjm/upstreamedge
Jim Morris [Tue, 20 Feb 2018 14:51:18 +0000 (14:51 +0000)]
Merge pull request #1270 from wolfmanjm/upstreamedge

fix usbdevice.

6 years agofix typos in USBdevice
Jim Morris [Tue, 20 Feb 2018 14:48:16 +0000 (14:48 +0000)]
fix typos in USBdevice

6 years agomake query new format the default
Jim Morris [Tue, 20 Feb 2018 14:46:08 +0000 (14:46 +0000)]
make query new format the default

6 years agoMerge pull request #1269 from cilynx/feature/m115_get_firmware_version
Jim Morris [Sat, 17 Feb 2018 09:05:08 +0000 (09:05 +0000)]
Merge pull request #1269 from cilynx/feature/m115_get_firmware_version

Add M115 Get Firmware Version

6 years agoAdd M115 Get Firmware Version
Randy C. Will [Sat, 17 Feb 2018 01:28:32 +0000 (17:28 -0800)]
Add M115 Get Firmware Version

I based this implementation on the existing `version` command in
SimpleShell as well as looking what the other players are doing with
M115:

http://reprap.org/wiki/G-code#M115:_Get_Firmware_Version_and_Capabilities

http://marlinfw.org/docs/gcode/M115.html

https://duet3d.com/wiki/G-code#M115:_Get_Firmware_Version_and_Capabilities

I did not bring MCU over from `version` as I felt there would be too
much code duplication / complexity for too little gain.  The M115 output
from my test branch looks like this:

FIRMWARE_NAME:Smoothieware, FIRMWARE_URL:http://smoothieware.org,
SOURCE_CODE_URL:https://github.com/Smoothieware/Smoothieware,
FIRMWARE_VERSION:feature/m115_get_firmware_version-8d5ff26,
BUILD_DATE:Feb 16 2018 17:11:15, SYSTEM_CLOCK:100MHz, AXES:3, CNC:1,
MSD:1
ok

Of course FIRMWARE_VERSION will look better when it's `edge` as opposed
to my overly long branch name.

I arbitrarily followed Marlin's example of leaving colons in the value
of the k-v pair as a problem for the parser instead of URL encoding them
like RepRap or avoiding them entirely like Duet3d.  I'm not married to
this, so if there's a preference for another direction, I'm open.

If accepted, I believe this fixes #279.

6 years agoMerge pull request #1267 from cilynx/fix/spindle_pid_tuning
Jim Morris [Fri, 9 Feb 2018 17:03:10 +0000 (17:03 +0000)]
Merge pull request #1267 from cilynx/fix/spindle_pid_tuning

Fix M958 Set Spindle PID Parameters

6 years agoFix M958 Set Spindle PID Parameters
Randy C. Will [Fri, 9 Feb 2018 16:49:18 +0000 (08:49 -0800)]
Fix M958 Set Spindle PID Parameters

Original code sets the P term to any values provided for P, I, or D with
no way to set I or D terms.  This change sets I and D correctly as one
would expect when I and D are passed to M958.  The set_i_term() and
set_d_term() functions already existed, so the layout in
on_gcode_received() was likely a simple oversight by the original
author.

I tested this change on the bench with a Smoothieboard driving an MC2100
DC controller hooked up to a 2HP treadmill motor.  Prior to the change,
M958 would only set the P term.  After the change, M958 works as
expected and the PID controller can be tuned live.

6 years agoMerge pull request #1266 from wolfmanjm/upstreamedge
Jim Morris [Thu, 8 Feb 2018 15:31:02 +0000 (15:31 +0000)]
Merge pull request #1266 from wolfmanjm/upstreamedge

some convenience features

6 years agoadd example six-axis config snippet
Jim Morris [Thu, 8 Feb 2018 15:12:15 +0000 (15:12 +0000)]
add example six-axis config snippet

6 years agoadd max_travel warning to homing cycle fail
Jim Morris [Thu, 8 Feb 2018 15:04:14 +0000 (15:04 +0000)]
add max_travel warning to homing cycle fail

6 years agoadd a useful message after delta grid probe to save it.
Jim Morris [Tue, 23 Jan 2018 14:53:01 +0000 (14:53 +0000)]
add a useful message after delta grid probe to save it.

6 years agoMerge pull request #1262 from wolfmanjm/upstreamedge
Jim Morris [Mon, 22 Jan 2018 14:49:43 +0000 (14:49 +0000)]
Merge pull request #1262 from wolfmanjm/upstreamedge

Fix snprintf return value misunderstanding

6 years agosizeof(buf)-1 not needed
Jim Morris [Mon, 22 Jan 2018 14:46:00 +0000 (14:46 +0000)]
sizeof(buf)-1 not needed

6 years agofix misunderstanding for return value of snprintf, where it matters.
Jim Morris [Mon, 22 Jan 2018 14:40:59 +0000 (14:40 +0000)]
fix misunderstanding for return value of snprintf, where it matters.

6 years agoUpdate TemperatureControl.cpp
Jim Morris [Sat, 20 Jan 2018 19:42:47 +0000 (19:42 +0000)]
Update TemperatureControl.cpp

6 years agoMerge pull request #1256 from wolfmanjm/upstreamedge
Jim Morris [Thu, 11 Jan 2018 18:16:17 +0000 (18:16 +0000)]
Merge pull request #1256 from wolfmanjm/upstreamedge

fix progress when large files are being played

6 years agofix progress when large files are being played
Jim Morris [Thu, 11 Jan 2018 00:22:11 +0000 (00:22 +0000)]
fix progress when large files are being played

6 years agoupdate -latest bins
Jim Morris [Mon, 1 Jan 2018 22:27:21 +0000 (22:27 +0000)]
update -latest bins

6 years agoMerge pull request #1250 from wolfmanjm/fix/disk_write
Jim Morris [Mon, 1 Jan 2018 22:21:42 +0000 (22:21 +0000)]
Merge pull request #1250 from wolfmanjm/fix/disk_write

fix disk write when sector count > 1.

6 years agoremove 400 byte limit write HACK
Jim Morris [Mon, 1 Jan 2018 11:55:15 +0000 (11:55 +0000)]
remove 400 byte limit write HACK

6 years agoMerge pull request #1241 from michaelnew/cartesian_grid_extrapolation
Jim Morris [Mon, 1 Jan 2018 11:40:28 +0000 (11:40 +0000)]
Merge pull request #1241 from michaelnew/cartesian_grid_extrapolation

Add simple extrapolation for cartesian grid compensation

6 years agofix disk write when sector count > 1.
Jim Morris [Mon, 1 Jan 2018 11:37:07 +0000 (11:37 +0000)]
fix disk write when sector count > 1.

This should allow the HACK that limits disk writes to 512 bytes.

6 years agoMerge pull request #1239 from adrianjobst/fix/probing-dwell
Jim Morris [Sat, 23 Dec 2017 02:16:10 +0000 (02:16 +0000)]
Merge pull request #1239 from adrianjobst/fix/probing-dwell

fix / dwell before probing

6 years agoupdate firmware.bin
Jim Morris [Fri, 22 Dec 2017 21:38:12 +0000 (21:38 +0000)]
update firmware.bin

6 years agoMerge pull request #1244 from wolfmanjm/upstreamedge
Jim Morris [Thu, 21 Dec 2017 20:29:25 +0000 (20:29 +0000)]
Merge pull request #1244 from wolfmanjm/upstreamedge

Fix handling of an illegal line number

6 years agoFix crash if an illegal line with just N1 on it is sent or a blank line with line...
Jim Morris [Thu, 21 Dec 2017 20:25:43 +0000 (20:25 +0000)]
Fix crash if an illegal line with just N1 on it is sent or a blank line with line number and checksum
Fixes issue #1243

6 years agoMerge pull request #1242 from lordofhyphens/stream-log
Jim Morris [Sun, 10 Dec 2017 17:01:55 +0000 (17:01 +0000)]
Merge pull request #1242 from lordofhyphens/stream-log

Alternate quiet mode for smoothie-stream that outputs to a log instead.

6 years agoAlternate quiet mode that outputs to a log instead (useful when print progress wants...
Joseph Lenox [Sun, 10 Dec 2017 16:46:44 +0000 (10:46 -0600)]
Alternate quiet mode that outputs to a log instead (useful when print progress wants to be monitored and process is to be backgrounded).

6 years agocartesian grid still provides an offset for out-of-bounds xy locations
Michael New [Sat, 9 Dec 2017 02:18:46 +0000 (18:18 -0800)]
cartesian grid still provides an offset for out-of-bounds xy locations

6 years agomoved dwell time to the begining of the function, so the if clause will not cancell...
adrianjobst [Wed, 6 Dec 2017 21:45:49 +0000 (22:45 +0100)]
moved dwell time to the begining of the function, so the if clause will not cancell the function before the dwell ever happened

6 years agoMerge remote-tracking branch 'upstream/edge' into upstreamedge
Jim Morris [Tue, 5 Dec 2017 21:30:58 +0000 (21:30 +0000)]
Merge remote-tracking branch 'upstream/edge' into upstreamedge

6 years agoMerge pull request #1237 from cilynx/fix/spindle_analog_report_speed
Jim Morris [Mon, 20 Nov 2017 09:54:16 +0000 (09:54 +0000)]
Merge pull request #1237 from cilynx/fix/spindle_analog_report_speed

Report actual RPM and PWM instead of just target

6 years agoReport actual RPM and PWM instead of just target
Randy C. Will [Sun, 19 Nov 2017 22:03:54 +0000 (14:03 -0800)]
Report actual RPM and PWM instead of just target

The way `report_speed` was implemented, `M957` shows `target_rpm` as the
"Current RPM" and then calculates the PWM "Analog value" from there.

Because `turn_off` uses `update_pwm(0)` to turn off the output signal
without clobbering the `target_rpm` set by `M3`, if you `turn_off` the
spindle (via `M5`, a `HALT` state, etc), `M957` (`report_speed`)
incorrectly continues to report the old "Current RPM" and calculated
"Analog value" even thought the PWM signal has actually been cut off.

I turned this around so `report_speed` reads the real PWM ("Analog
value") being sent out `pwm_pin` and then calculates the real "Current
RPM" from there.  I also appended a new "Target RPM" field to the
`report_speed` output containing `target_rpm`.

Tested over USB serial with `M597`, `M3`, `M5`, `M112`, `M999`, `^X`,
and `$X`.

6 years agoMerge pull request #1236 from cilynx/fix/spindle_off_on_halt
Jim Morris [Sun, 19 Nov 2017 20:53:57 +0000 (20:53 +0000)]
Merge pull request #1236 from cilynx/fix/spindle_off_on_halt

Fix/spindle off on halt

6 years agoAdd spindle.ignore_on_halt to config sample snippet
Randy C. Will [Sun, 19 Nov 2017 20:41:11 +0000 (12:41 -0800)]
Add spindle.ignore_on_halt to config sample snippet

6 years agoConsolidate common spindle functions
Randy C. Will [Sun, 19 Nov 2017 20:35:55 +0000 (12:35 -0800)]
Consolidate common spindle functions

Doing the exact same event registration in every sub-module isn't very
DRY and could lead to inadvertent missed registrations in new
sub-modules.  Consolidating the registrations into `SpindleMaker`.

6 years agoStop spindle on HALT
Randy C. Will [Sun, 19 Nov 2017 19:19:59 +0000 (11:19 -0800)]
Stop spindle on HALT

When a machine enters a `HALT` state for any reason, the spindle should
stop for safety along with everything else.  This commit changes the
default behavior to `turn_off` the spindle `on_halt`.  I added an
optional `spindle.ignore_on_halt` config parameter that defaults to
`false` in case anyone needs the previous less-safe behavior.

I believe this addresses #1069.

I confirmed functionality on `PWMSpindleControl` via `M957` as well as a
physical scope while causing `HALT` via `M112` or `^X` over the serial
interface.

I found some weirdness in `AnalogSpindleControl` around `report_speed`,
but I'll address that in another PR.  I did confirm that `turn_off` is
being called `on_halt` as it should be and the PWM duty cycle is reduced
to 0 even though `M957` (`report_speed`) continues to report that the
spindle is moving.

Without having the equipment for the other side of the RS485 connection,
I can't do much to test `ModbusSpindleContol`, but
`HuanyangSpindleControl`, the only supported Modbus VFD right now,
implements `turn_off`, so I don't see any reason it shouldn't work fine
with this change.

6 years agoupdate cnc firmware latest
Jim Morris [Sat, 18 Nov 2017 21:02:14 +0000 (21:02 +0000)]
update cnc firmware latest

6 years agomove spindle.config
Jim Morris [Sat, 18 Nov 2017 20:56:47 +0000 (20:56 +0000)]
move spindle.config

6 years agoMerge pull request #1235 from cilynx/feature/spindle_max_pwm
Jim Morris [Sat, 18 Nov 2017 20:28:39 +0000 (20:28 +0000)]
Merge pull request #1235 from cilynx/feature/spindle_max_pwm

Feature/spindle max pwm

6 years agoFeature/spindle max pwm
Randy C. Will [Sat, 18 Nov 2017 20:03:37 +0000 (12:03 -0800)]
Feature/spindle max pwm

Treadmill motor controllers are becoming increasingly popular in DIY
machines.  One such popular controller is the mc2100 which expects a
duty cycle of 0-85% for 0-100% speed.  To keep the PWM signal below the
controller maximum and thus prevent the controller from going into an
error state when higher speeds than physically possible are requested,
we need a config option for the ceiling on the PWM signal.

I tested this for backwards compatibility with my original configuration
without this new parameter included and it works as expected, using 100%
as the maximum duty cycle.

I tested setting `spindle.max_pwm` to 0.85 (above the hard-coded 0.5
starting point) and 0.25 (below the hard-coded 0.5 starting point) and
confirmed expected function for both via M957 output and viewing the
physical PWM output with a scope.

I added a sample `spindle.config` showing this new parameter in context
with the other spindle parameters I could find with a quick grep of the
code and search through the docs.

6 years agoMerge pull request #1234 from cilynx/fix/get_pid_settings
Jim Morris [Sat, 18 Nov 2017 10:18:13 +0000 (10:18 +0000)]
Merge pull request #1234 from cilynx/fix/get_pid_settings

Align get_pid_settings() with report_settings()

6 years agoMerge pull request #1233 from cilynx/fix/spindle_on
Jim Morris [Sat, 18 Nov 2017 10:17:52 +0000 (10:17 +0000)]
Merge pull request #1233 from cilynx/fix/spindle_on

Remove conflicting bool spindle_on

6 years agoAlign get_pid_settings() with report_settings()
Randy C. Will [Sat, 18 Nov 2017 06:46:08 +0000 (22:46 -0800)]
Align get_pid_settings() with report_settings()

In the handler for M958 in `SpindleControl`, a function,
`get_pid_settings()`, is called which does not appear to exist beyond
its virtual initialization also in `SpindleControl`.  Because this
function does not really exist, M958 does not return any PID data.

`PWMSpindleControl` contains a function `report_settings()`, which
prints the PID data one would expect from M958.  Replacing
`SpindleControl`'s references to the non-existent `get_pid_settings()`
with `report_setting()` causes M958 to return PID data as expected.

6 years agoRemove conflicting bool spindle_on
Randy C. Will [Sat, 18 Nov 2017 06:19:09 +0000 (22:19 -0800)]
Remove conflicting bool spindle_on

Bool `spindle_on` is initialized in `SpindleControl` and is shared
between `SpindleControl` and whichever control method (PWM, Modbus,
Huanyang, or Analog) is configured.

Initializing `spindle_on` in `PWMSpindleControl` as well clobbers the
shared variable and leads to `SpindleControl` and `PWMSpingleControl`
having different values for `spindle_on` and thus the spindle is never
actually turned on when sending M3 commands.

This can be confirmed via M957 which will always show that the current
PWM is 0, no matter what the current and target RPM.

Removing this superfluous initializion causes `spindle_on` from
`SpindleControl` to be shared as expeced and the module then works as
can be confirmed with M957 showing appropriate PWM values responding to
current and target RPM.

6 years agoMerge pull request #1230 from oddstr13/edge
Jim Morris [Sun, 29 Oct 2017 15:31:58 +0000 (15:31 +0000)]
Merge pull request #1230 from oddstr13/edge

Added COPYING file

6 years agoAdded COPYING file
Odd Stråbø [Tue, 24 Oct 2017 20:10:31 +0000 (22:10 +0200)]
Added COPYING file

6 years agoupdate firmware.bin origin/HEAD origin/edge
Jim Morris [Tue, 17 Oct 2017 20:24:46 +0000 (21:24 +0100)]
update firmware.bin

6 years agoupdate latest bins (same as normal bin)
Jim Morris [Fri, 13 Oct 2017 12:25:01 +0000 (13:25 +0100)]
update latest bins (same as normal bin)

6 years agoupdate firmware.bin
Jim Morris [Fri, 13 Oct 2017 12:21:39 +0000 (13:21 +0100)]
update firmware.bin

6 years agoMerge pull request #1226 from Zaaphod/Fix_XZ_Arcs
Jim Morris [Fri, 29 Sep 2017 21:02:52 +0000 (22:02 +0100)]
Merge pull request #1226 from Zaaphod/Fix_XZ_Arcs

Fix Math for Arcs in XZ Plane - Issue  #1181

6 years agoFix Math for Arcs in XZ Plane - Issue #1181
James Richters [Fri, 29 Sep 2017 20:40:39 +0000 (16:40 -0400)]
Fix Math for Arcs in XZ Plane - Issue  #1181

The math for calculating angular travel needs to be reversed only for XZ arcs, this is because the arc is now starting and ending in different quadrants than a similar arc in the other 2 planes.

6 years agoMerge pull request #1223 from DavidJRobertson/make-debug-store-win
Jim Morris [Sat, 23 Sep 2017 20:27:11 +0000 (21:27 +0100)]
Merge pull request #1223 from DavidJRobertson/make-debug-store-win

Fix `make debug-store` (and hence `make upload`) on Windows