v8.993 NCC tool: failed for multitool operation

Issue #426 resolved
Vladimir Ivanov created an issue

The issue files placed here

Open my project, apply NCC parameters as in the pic and you receive terrible result:

  1. Tool order works not reverse as expected
  2. Big poligonal copper processed with smaller tool
  3. Plotting seed have a visual gaps…

Please note, I use Area Selection (square) for the whole PCB. ‘Itself’ selection not produce rectangular shape.

Comments (18)

  1. Vladimir Ivanov reporter

    v8.993 quick issues list (sory for my english):

    1. Pref: Spindel dwell parameter popup tooltip do not inform users if it's in sec or ms. Need to be updated.
    2. GUI: If HUD is disabled, dX and dY missing in the status bar.
    3. NCC: Rest matchining output to tcl is invalid for multitool operation as u can see in my pic.
    4. NCC: Under certain circumstances editing tool dia value directly in the tool table cell causing FlatCAM to close. In some other cases adding/editing more tools in tool table causing this table to clear except for the first tool.
    5. NCC: If 'rest machining' is disabled, forward tool order work produce overlapped geometries for each tool. I cannot undestand where/how it can be used. Reverse tool order works also not clear, it cannot fully remove unwanted copper in simple places and this result cannot be used. I think, if there are more then one tools in tool table it must be work as 'rest machining' nature, actually it works strange, such work is meaningless.
    6. NCC: multitool operation with 'rest machining' is disabled produce geometry for only one (first) tool in tool table.
    7. Under certain circumstances if the user open the saved project, attempt to start Paint tool causing FlatCAM to close.
    8. NCC: 'rest machining' process took a long time, the progress bar is very poor for this and users can decide the software is freezes.
    9. GUI: the progress bar info (low right display corner) have not enough space to display a message [for notebooks].
    10. NCC: tool X number in tool table do not always syncronize with 'Parameters for: Tool X' string. For example: tool 1 is selected, Parameters for: Tool 2.

  2. Marius Stanciu

    Hi,

    1. It’s as designed and it stays like this. That is because some GCode sender software will use the value in milliseconds, some software in seconds. For example MACH3 has a setting that will interpret the value as seconds or as milliseconds. Therefore it is is impossible to say what will be the units.
    2. It’s as designed. If the user needs the dx, dy then will have to use the HUD. Other software are doing this also.
    3. As told elsewhere, the output of this tool is not guaranteed to work as expected. There are many factors that control the success (or failure) of the process. It’s a try and see process: if it’s not working try again with different parameters and or tools
    4. True.
    5. In the next version, using NCC Tool without the “Rest” checkbox checked will yield this result. It’s the same for the Paint Tool. As for usefulness … it will be there for that case when it will be actually useful, I can’t predict.
    6. I will look on that.
    7. Possible, there may be issues because some users insist in using the old preferences files even if the app is in Beta stage and the preferences somehow have breaking changes.
    8. The performance is what it is. There are limitations in what this app can do, remember that it is Python based which is not the fastest language there is. That’s the best that is available at the moment.
    9. For the moment I have no idea how to adjust dynamically the size of that area/region of status bar according to the message length. Therefore it has a fixed width and yes, some messages may be too long. But unless someone comes with an idea, it will have to stay as it is.
    10. I’ve seen it too, but it needs more time to find out why. Since it does not happen all the time it does need a lot of time allocated to research it.

    And that brings us to the … time. I’m sorry to say but the time this tool require is too much for the results it can give. This tool is a mess to maintain (my mess 🙂 ) and not so easy to work with. The outcome from this tool is also fundamentally unreliable.
    I am not going to focus on it, honestly speaking I was ready to remove it from FlatCAM beta as it is consuming too much development time (I even don’t use it at all).
    One can have almost the same result by creating a Non-copper Region area and doing Paint Tool on it.

    What I can do is give it a shot one more time. I will try one more to refactor it, modernize it, optimize it, and then it’s final. It will stay as it is until someone else will decide to take a shot at it.

  3. Vladimir Ivanov reporter

    Marius, thanks. Some words for HUD. I working with FlatCAM on notebook and HUD cannot be used for the following reasons:

    1. It occupier a lot of space. I cannot easily view anything under the HUD.
    2. It is a bit transparent. Reading dX dY values is difficult and depends of the info under the HUD. Make it less or more transparent is not a good idea.
    3. It not yet provide to user any additional important information (at the moment).

    So, I keep it disabled. But this way I lost dX dY completely (the status line was a good place). However, this dX dY info is very useful. Is it time to sad?

  4. Marius Stanciu

    Hi Vladimir @{557058:77c0e410-f506-406c-b7b2-24054bad3f28} ,
    The problem is that I intend to add more control icons to the status bar (I like it this way). This means that the status bar will more crowded and there will be not enough space for the messages (although they can be read in full in the Shell).
    So the delta coordinates are a good candidate to get rid of, since the same information is now in the HUD.

    Yet, I can understand if someone really get used to a kind of UI and want to have it in the same way.
    So I’ve added a way to control the visibility of what is in the status bar by right clicking in the status bar and selecting what to be showed. The settings in the context menu are persistent, meaning that at the next app start those settings will be the same as you left them. I’m not going to add controls in the Preferences for this but this should be sufficient.

  5. Vladimir Ivanov reporter

    Ok, very happy! But my real pain now is NCC. My CNC device works second hour with the 0.35mm tool and by 75% do the work which is already executed by the previous 0.8mm tool. The tool jobs is not subtracted correctly in NCC and I don’t know how to prepare it right way…

  6. Marius Stanciu

    I would say that ‘rest machining’ is quite experimental. Better don’t use it for now.
    And since the NCC Tool is compromised in the sense that it uses a kind of ‘rest machining' in all modes, better use it with one tool only (or one tool for clear operation and one tool for isolation operation).

  7. Marius Stanciu

    I think I may have succeeded in making the NCC tool ‘rest machining’ behave. Yet, it’s still no guarantee that it will work in any situation. If the PCB have a ground plane, you may be better off in using the Isolation Tool with multiple passes and perhaps clearing certain areas with NCC Tool → Area Selection.

  8. Vladimir Ivanov reporter

    Great!!! The NCC tool is (my opinion) a heart of FlatCAM and we must keep it free from any sicks! ))) I also have an idea: if the user generate some geometries (isolation or custom) before NCC start and it have plot status ‘enabled’ the NCC must immediately subtract this geometries from future NCC job (before it start). This futher reduce the time to remove unwanted copper…

  9. Marius Stanciu

    Sorry Vladimir but NCC Tool is just a tool out of many.
    Each person has his own preferences, for example my preference lays with the Excellon processing, CutOut Tool, Film Tool and Panelize Tool.
    The rest is excess for me, to be used in the rare occasion that I do need it.
    On the top of my preferences, NCC Tool is actually the last one. I don’t use it.
    What I do say is that I want everybody feel OK when using the application, each with its own “little corner”.

    Also each Application Tool is rather encapsulated, like it’s own application. Or if you like, it’s like a plugin. Therefore what you suggest is interference and it does not fit in with how I see this application. More than that, it will create complications while I want to make things as clear as they can. So I will not wrap the application around NCC Tool.

    This is why, the next step is to take also the drilling stuff out of the Excellon UI and fit it into its own Tool: Drilling Tool.
    At that moment, what is named FlatCAM beta will become fully a framework on which different Tools work.

  10. Vladimir Ivanov reporter

    Marius, if you milling PCBs how you remove unwanted copper without NCC functionality? Are you using Paint tool like in FlatCAM v8.5? I don’t know any other ways… Or maybe you make only isolation and keep unwanted copper free from processing?

  11. Marius Stanciu

    Hi,

    Can you check the latest version and see if we can close this issue? Let me know if FlatCAM beta 8.994 (just released) solves the issue.

  12. Vladimir Ivanov reporter

    Ok, the NCC tool is a great progress in v8.994 and issue looks to be resolved. Thanks for the new FlatCAM version! But NCC tool need to be tested deeper for some times.

  13. Marius Stanciu

    Honestly, I don’t have the time neither the disposition for testing. For that I am relying on the user base like yourself 🙂 Everybody is doing what he can …

    So, I am going to close this issue.

  14. Log in to comment