After installing FC version .20 (I believe this is when it started) I am seeing a change in my posted G-code. I now have a G0 move to my preset clearance height. Problem (at least for me) is that is happening prior to a tool selection so the TLO in the machine is possibly in an unknown state and this would be a wasted move in most cases prior to the first tool change. I went back and looked at the many g-code files I generated from path in the past and this line was never there? I had a modified linux-cnc post that I was using on a Haas Mini Mill. That post started generating errors (like described here: FREECAD 0.20.29177 AppImage Path Workbench "'_TempObject' object has no attribute 'InList'") when I attempted to post process a file after upgrading to .20. I had .18, .19 and .20 on my system all at the same time along with some development versions. So I uninstalled all versions and reinstalled v .20 (system details below) and started from scratch with the modification of the linuxcnc post processor for my needs. That seems to have resolved the "TempObject" errors. Looking at the post processor .py file I am roughly seeing where this is happening but I am not seeing how I can prevent it. It looks like the same code is used in all cases? It also looks like this rapid is being created redundantly at times. Possibly the same issue? I have tried multiple combinations of attribute settings in the Job with no luck there. Gcode snippet 1 below shows the move prior to the first tool change. Gcode snippet 2 below shows a redundant G0 call in the same program. The redundant is not as concerning but may help point to the problem. I should also add that I tried the Fanuc Post and had the same issue.
Gcode snippet 1
(Exported by FreeCAD)
(Post Processor: linuxcnc_post)
(Output Time:2022-07-14 09:20:31.746474)
(begin preamble)
G17 G54 G40 G49 G80 G90
G20
(begin operation: G54)
(machine units: in/min)
G54
G0 Z0.1969
(finish operation: G54)
(begin operation: T3: 1/4" End Mill)
(machine units: in/min)
(T3: 1/4" End Mill)
M5
M6 T3
G43 H3
M3 S5800
(finish operation: T3: 1/4" End Mill)
(begin operation: Pocket_Shape)
(machine units: in/min)
(Coolant On:Flood)
M8
(Pocket_Shape)
G0 Z0.1969
G0 X2.3495 Y-1.9543
G0 Z0.1181
Gcode snippet 2
G1 X1.0995 Y-1.2952 Z-0.3860 F30.0000
G2 X1.0998 Y-1.2707 Z-0.3860 I0.1557 J0.0100 F30.0000
G2 X1.1243 Y-1.2703 Z-0.3860 I0.0145 J-0.1554 F30.0000
G0 Z0.1969
G0 Z0.1969
(finish operation: Pocket_Shape)
(Coolant Off:Flood)
M9
(begin operation: Helix)
(machine units: in/min)
(Helix)
(helix cut operation)
G0 Z0.1969
G0 Z0.1969
G0 X2.3015 Y-2.5103 Z0.1969
G0 X2.3015 Y-2.5103 Z0.0000
G0 X2.4265 Y-2.5103
G1 Z0.0000 F5.0000
Code: Select all
OS: Windows 10 Version 2009
Word size of FreeCAD: 64-bit
Version: 0.20.29177 (Git)
Build type: Release
Branch: releases/FreeCAD-0-20
Hash: 68e337670e227889217652ddac593c93b5e8dc94
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.2
Locale: English/United States (en_US)
Installed mods:
* 3DfindIT 1.2.0
* 3D_Printing_Tools
* A2plus 0.4.54b
* Assembly3 0.11.3
* BIM 2021.12.0
* BOLTSFC
* CADExchanger
* cmt_lcnc_post.py
* cmt_lcnc_post.pyc
* cmt_linuxcnc_post.pyc
* Defeaturing
* Design456 0.0.1
* dodo
* dxf-library
* ExplodedAssembly
* fasteners 0.3.38
* FCGear 1.0.0
* frame
* FreeCAD_assembly3-master
* Glass
* Haas_Mini_Mill_post.py
* Haas_Mini_Mill_post.pyc
* IconThemes
* job_Haas_mini.json
* LCInterlocking
* Manipulator 1.4.3
* Mechatronic
* NavigationIndicator
* OpticsWorkbench 1.0.8
* PieMenu
* ProDarkThemePreferencePack 1.0.0
* pyrate
* Render 2022.2.0
* sheetmetal 0.2.50
* __pycache__