LinuxCNC Features - a kind of NGCGUI

More
05 Nov 2015 05:32 #64775 by FernV
Hi,

what do you need to debug on engrave-feature?(check a few posts above).


I am going to fix the mirror issue. The indentation problem is caused by your editor that insists to use tabs instead of using a number of spaces. I do not know if in preferences you have this option but gedit has. Python works best with spaces.

Fern

Please Log in or Create an account to join the conversation.

More
05 Dec 2015 06:36 #66440 by fixer
Hi Fernand,
Another idea:
I would like to have "save as default template" called just before app is closed. So the current work gets automatically saved, and reopened on restart. How can I achieve this? Should be simple, calling actionSaveTemplate in exit handler, but I don't know the proper syntax....

Please Log in or Create an account to join the conversation.

More
05 Dec 2015 15:42 - 05 Dec 2015 15:47 #66458 by FernV

Hi Fernand,
Another idea:
I would like to have "save as default template" called just before app is closed. So the current work gets automatically saved, and reopened on restart. How can I achieve this? Should be simple, calling actionSaveTemplate in exit handler, but I don't know the proper syntax....


Hi Mit

On my computer when I exit Lcnc-Axis, I get this message in the terminal :
"/usr/bin/gladevcp:295: GtkWarning: GdkWindow 0x3c00003 unexpectedly destroyed
gtk.main()"
Is it Axis or my computer the culprit ? I do not know, but it does not happen with gmoccapy.
This is why topfeatures are saved each time one is added, not when the app is closed.

I could place a button for quick saving but I think the best would be to save after each change under the name 'current_work.xml' and if you empty the treeview, the file would be erased. You could still undo before you quit. 'def_template.xml' should be used when starting a new task/job. At start-up, it would look for 'current_work.xml' and load it if found, else load 'def_template.xml' if found. I think there should also be an option to re-load last file or not.

Does this sound good to you ? Any suggestions to make it even better ?

I was going to write to you about this : spiral mill (by layer)
I tried to follow your suggestions on the matter. As I am sure you can see, it will mill the center to a z value then expand, return to the center, mill the center to the next step down then expand again then finish the last bite (if defined) at a different feed/spindle speed for a defined number of passes (>= 0). About all I have to debug is stopping loops and when changing feed/speed. Once done, it will be available to all base shape. Any suggestions to make it even better ?



And the latest news...
I have been working with Lcnc team to include Features in the distribution. I am using all my dev time to this. I do not know exactly when it will be released but I will not make a personal release anymore, working on only one project is enough.



If you want to try it, it is available as a buildbot dist
buildbot.linuxcnc.org/dists/

I am not sure yet how to install it, but I will let you know when Ido

Regards,
Fern
Attachments:
Last edit: 05 Dec 2015 15:47 by FernV.

Please Log in or Create an account to join the conversation.

More
05 Dec 2015 16:38 #66467 by dgarrett

And the latest news...
I have been working with Lcnc team to include Features in the distribution.


The LinuxCNC git tree now includes a testing branch named 'features_preview_2'

When updates (commits) are made to this branch, the LinuxCNC buildbot will attempt
to build deb packages. If successful, the deb packages will be available
for a _limited_ time on the buildbot as 'scratch' debs for testing.
(A deb build may fail if there are compile errors or if the runtests suite
fails on any supported distribution/architecture)

Instructions to install 'scratch' debs are included on the buildbot
home page:
buildbot.linuxcnc.org

The scratch debs make it possible for interested users to help by testing a
deb install and reporting problems).

The 'features_preview_2' branch has been rebased on the LinuxCNC 2.7 branch
so after some period of testing and validation, the 'features_preview_2'
branch can be merged into the 2.7 branch and made available to all users
updating an existing 2.7 installation. There is no schedule for this.

Note: As of today ( Sat Dec 5 16:32:34 UTC 2015), there are no scratch
debs for the 'features_preview_2' branch. When a new update (commit) is
made, a successful buildbot build will create debs within a couple of
hours typically.

The buildbot status showing recent activity can be viewed at:
buildbot.linuxcnc.org/buildbot/grid

The grid shows all recent build attempts for both mainline and testing
branches.
The following user(s) said Thank You: FernV

Please Log in or Create an account to join the conversation.

More
05 Dec 2015 16:44 #66468 by fixer
Hi,

Does this sound good to you ? Any suggestions to make it even better ?


yep, better, but save strictly on exit, not on every change. constant write to solid state hard disks to same location is not good, for disk life. And I am using CF cards for most of my embedded computers, wich are even worse at wear leveling...
try to optimize those writes for top features, too, or add option to completely disable them.


spiral mill:
almost ok, but should be like this (for circles):
1. spiral plunge to depth per pass
2. spiral clear pocket with feed, but leave some stock for the last pass at the wall
3.clear the wall (last spiral) with different feed (finnishing feed and rpm)
4. repeat 1-3 until last pass
5. last pass could also be cleared with different feed

with that strategy you can mill a lot faster and cut pockets to a few times the cutter diameter in depth in one pass.

this is ok for circles and elypses, and maybe polygons. Squares and rectangles should also be cleared like circles, until the mill touches one of the walls. Corners should then be milled with different strategy.
Tool receives the most stress when entering corner, because the "cutter engagement angle" quickly rises - more info here www.mmsonline.com/articles/the-promise-of-high-cube-machining, or google "constant cutter engagement".

something like this:





If you think that this is too much work, you should at least use different feed when entering corners on polygons.

Please Log in or Create an account to join the conversation.

More
07 Dec 2015 03:08 - 07 Dec 2015 03:09 #66541 by FernV

Hi,
... save strictly on exit, not on every change. constant write to solid state hard disks to same location is not good, for disk life. And I am using CF cards for most of my embedded computers, wich are even worse at wear leveling...
try to optimize those writes for top features, too, or add option to completely disable them.


I was unable to find a event that called back on closing, save_work method was never called.
The closest were those, read the notes if you will
developer.gnome.org/pygtk/stable/class-g...idget--destroy-event
developer.gnome.org/pygtk/stable/class-g...widget--delete-event
developer.gnome.org/pygtk/stable/class-g...l-gtkobject--destroy

I added a button to save current work but you have to push it before closing. Your 'current_work.xml' will be reloaded at startup

Files edited : features.py and features.glade available here
github.com/FernV/linuxcnc-features

Regards
Fern
Last edit: 07 Dec 2015 03:09 by FernV.

Please Log in or Create an account to join the conversation.

More
07 Dec 2015 15:00 - 07 Dec 2015 15:04 #66557 by FernV

Hi,
... constant write to solid state hard disks to same location is not good, for disk life. And I am using CF cards for most of my embedded computers, wich are even worse at wear leveling...
try to optimize those writes for top features, too, or add option to completely disable them.


I read this interesting report on SSD write limit
techreport.com/review/27909/the-ssd-endu...ment-theyre-all-dead

If you are concerned about disk life, here some info about features :
The most often it writes to disk is every time you change a param value or add a feature. It recreates features.ngc then
lcnc reloads it. ONLY if you set use_top_features_toolbar = True, top features file will be modified after you add a feature, not when editing a parameter. This is much less often than features.ngc. topfeatures history will be saved to keep records over a long period.
Since features.ngc is re-writen when a file is loaded or after every real change, you could use a ramdisk as PROGRAM_PREFIX in your ini file.

I personnaly followed these instructions to create a 128K ramdisk and edited fstat to mount it on every boot.
www.jamescoyle.net/how-to/943-create-a-ram-disk-in-linux
When stopping my computer it asks if I want to save the file or I will lose it. I never save it.

I think this could be implemented : save your current work on every change to ramdisk then automatically save to Home when turning off and recopy after it is mounted.

Edited features.py available at github.com/FernV/linuxcnc-features

Fern
Last edit: 07 Dec 2015 15:04 by FernV.

Please Log in or Create an account to join the conversation.

More
12 Dec 2015 14:03 - 12 Dec 2015 14:03 #66867 by billykid
hello
i downloaded features and tested stand alone in my lucid linuxcnc.
for install embedded i execute ./setup but it seems require python 2.7
I have to change the system or it can also run on lucid?
thanks
Mauro
Last edit: 12 Dec 2015 14:03 by billykid.

Please Log in or Create an account to join the conversation.

More
12 Dec 2015 17:07 #66876 by jepler
The "master branch" of LinuxCNC development no longer supports Ubuntu 10.04 "Lucid Lynx", as discussed on the mailing list back in September: mid.gmane.org/20150929204315.GB63865%40unpythonic.net

The ability to start using language features only available in Python 2.7 and newer was one major motivation that I named at the time.

All 2.7.x bugfix releases are anticipated to be available on Ubuntu 10.04, but that is the end.
The following user(s) said Thank You: billykid

Please Log in or Create an account to join the conversation.

More
12 Dec 2015 17:26 #66877 by billykid
thanks Jeff !
I'll try to install Precise, with Wheezy I have not experienced, after years with Ubuntu.
regards
Mauro

Please Log in or Create an account to join the conversation.

Time to create page: 0.866 seconds
Powered by Kunena Forum