Comments (7)
Is this in combination with touch off @ G59.3?
FYI the toolchange workflow is run on the controller side, the sender is basically waiting for a cycle start to be issued (while allowing jog commands).
from iosender.
Hi,
yea it is in combination with the automatic touch off at G59.3.
When using a normal size endmill, everything works out great. I hit M6 T5 for example, toolhead raises up, i change tool, click start and it moves over to the pin + touches off. All good for normal style endmills.
But facemills for example, are deeper in the center than on the outside (where the inserts are), so the measurement is not right.
These would require a different touch off position so the inserts touch the probe and not the center deeper dish of the facemill.
See examples below:
Thanks in advance,
Tom
from iosender.
In the next commit I will change the signature of an event and where it is called from to allow plugin code to modify the G59.3 target. A simple plugin will be something like this:
#include "grbl/hal.h"
#include "grbl/protocol.h"
static on_probe_toolsetter_ptr on_probe_toolsetter;
static on_report_options_ptr on_report_options;
bool probeToolSetter (tool_data_t *tool, coord_data_t *position, bool at_g59_3, bool on)
{
if(on && tool && position) {
if(tool->tool_id == 5)
position->y += 5;
}
if(on_probe_toolsetter)
on_probe_toolsetter(tool, position, at_g59_3, on);
return true;
}
static void report_options (bool newopt)
{
on_report_options(newopt);
if(!newopt)
hal.stream.write("[PLUGIN:Toolsetter tool offset v0.01]" ASCII_EOL);
}
void my_plugin_init (void)
{
on_probe_toolsetter = grbl.on_probe_toolsetter;
grbl.on_probe_toolsetter = probeToolSetter;
on_report_options = grbl.on_report_options;
grbl.on_report_options = report_options;
}
A more complete plugin should be made that allows setting the offset(s) for multiple tools and store them in EEPROM. And maybe later incorporate the code into the core itself.
from iosender.
This sounds great. Cant wait for it to happen.
Thanks a bunch
from iosender.
Here is a plugin for you to test:
my_plugin.zip
It has five slots (compile time configurable) for specifying tool offset (radius), applied in the X direction (should be configurable via setting?). Configuring a slot is via M102: M102 P<slot> T<tool> R<tool radius>
I do not know if this plugin cover the needs for probing odd tools, feedback is required before I add it as an option in the Web Builder.
from iosender.
Thanks, Ill give it a spin soon and then ill let you know if any issues come up.
from iosender.
Related Issues (20)
- Basestream is only available if port is open HOT 9
- Chinese translation HOT 13
- Problem with probing HOT 19
- STM32 Blackpill? HOT 4
- Incorrect variable in setter HOT 1
- Lathe taper problem. HOT 4
- Make own G-Code sender HOT 2
- The application cannot be opened HOT 1
- Machine moving unexpectedly when on probing page HOT 5
- backlash compensation HOT 2
- Unexpected results with G38.2 HOT 7
- Coordinate system table that easily crashes the program HOT 1
- Shortcut key issues HOT 3
- WEIRD things arre happening HOT 8
- Iosender 2.044 restarting gcode after "PAUSE" HOT 12
- Program limits not calculated for A-axis HOT 1
- X gantry squaring process, perhaps something for a wizard in IOSender? HOT 5
- 2.0.45p8 probbing issue HOT 5
- Why is probing tab greyed out (disabled)? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from iosender.