Flatcam beta 8.994 Crashes when Opening a File - fixed for next version

Issue #503 new
fredled created an issue

Flatcam beta 8.994 64bit crashes right after or during opening a file (gerber, excellon or any existing flatcam project created with version 8.992). Flatcam shows that it’s reading the files for a few seconds, then closes abruptly. No error message, nothing. Only the Flatcam window disappearing. I couldn’t open any file with it. No problem with the version 8.992 (except slowliness).

Windows 10, 64 bit

Comments (10)

  1. Marius Stanciu

    Hello!
    This is to be expected. The 8.994 version and the future 8.995 version upgrades the data structures which mean that old projects can no longer be opened. That’s the price of going forward with developing.

    When you go back and forward between FlatCAM beta versions, make sure that each time you delete the preferences files because of those changes that I mentioned before. If you don’t do it you’ll have all kind of crashes.

    In the 8.995 version I’ve made some changes such that hard crashes are now logged in a file that will be found in the FlatCAM beta preferences folder. That at least will point us in the right direction.

  2. fredled reporter

    Hello Marius. Thanks for the reply. The problem is that it can’t open gerber and drill files neither. Not only projects from older versions. I design gerber and drill files with FreePCB 2.034.

    With FlatCam 8.993, it works. And I noticed that the 8.993 version is a little bit faster than the 8.992 version. Plotting cnc jobs is especially slow.

  3. Marius Stanciu

    Hi,

    This is just what I have expected: “developers” wanting to show that they are different and going to extreme lengths to display that. Not only they declared twice the tools and tools diameters but they also declared it comments (where other bigger packages add different kind of information’s) and also declared the units just after comments instead of doing a nice job of having it displayed as it is supposed to be, just before the end of the header.

    It’s jungle when it comes to parse the drill files. This time I managed to fixed it but I guess there will be a time that I had enough of it. Right now the parsing code looks awful, a lot of patches here and there to allow yet another non-standard way of storing the drill data….

    Perhaps what should be done is to first make a header analyzation and correct the invalid format and only after that proceed to actual drill data processing. But that is for somebody else to do.

    As for the Gerber file, it seems that sometime after the release of version 8.994 last year it was solved as this opened without issue from first try, on my working copy.

    Expect those fixes to be made available when the 8.995 version is ready (I don’t know when this will happen).

    LE: BTW, your IC pin drill holes leave an very small annular ring: perhaps you should reduce the drill diameter in your design to make it a bit more sturdy. If you try to mill it, it’s a strong possibility that it will brake an such a small annular ring even if from engraving tool vibration. My opinion…

  4. fredled reporter

    Hi Marius. Glad that you tried and that you could open it. I don’t know how a gerber or drill file should be written properly. Maybe you could give some more precise advises. I will transmit your recommendation to the FreePCB developer.

    Thanks for the advise on hole diameters. I have already milled such a ring and they are OK. I routed the contour with a 0.3mm mill and I drilled the holes with a 1.5mm drilling bit. I may try with 1mm, but I’m afraid it will be more difficult to insert THT components and pin headers. For this big project I will use 1mm, 0.6mm and 0.3mm (when needed) mills. Optimizing the geometry for such project took a lot of time.

    The biggest problem is to match the wholes with the other side, when doing a doubled side PCB. Flatcam mirror the bottom side correctly using “Box”. But when I flip the PCB in reality, on the CNC machine, the holes are not exactly at their right position. This is a problem with my CNC machine. I need to recalibrate the Y origin of my machine everytime I change a tool (I change the tools manually). The X axis is still good, but not the Y axis.

  5. Marius Stanciu

    Hi Fred,

    Honestly who knows now who has the upper hand? In the end both the Gerber RS-274X and its subset the Excellon NC drill file format are slowly phased out in favor of Gerber X2. There are some many non-standard ways to create a drill file, some don’t even include the drill diameters (they use a different file in best case or expect the machinist to know what drill diameters to use).
    In my working copy I already added some support for the Gerber X2 NC-drill files so we should be OK for the future.
    NB: I may have been too harsh due of hips bone pains (almost in the middle of possible f… C19 flu), I feel like an old man… so please excuse the implied tone.

    From my experience, you could use 0.6…0.7mm drill holes for the DIP capsule IC’s, 0.9mm for the H2.54 pin headers, 1.2…1.3mm for the terminal blocks and/or 5A diodes. For the rest you could try for 1mm tool diameter as a good for all value but it is always best to make it a bit smaller so the component stay in place and can be soldered easily.

    BTW, if you have access to a 3D printer have a look here for some PCB holders that will make your TH soldering job a breeze:
    https://www.thingiverse.com/search?q=PCB+holder&type=things&sort=relevant

    But when I flip the PCB in reality, on the CNC machine, the holes are not exactly at their right position. 

    That is normal if your drill locations are not really symmetrical top/bottom (for that matter it’s the same for left-right asymmetry, or even both). That can be easily solved by using a Gerber Outline layer that it will contain a single trace surrounding your entire PCB. And then use that Outline layer as reference in the 2sided Plugin (Tool).

    See the surrounding trace below belonging to the usb_isolator-Edge_Cuts.gbr. Use the same reference for all the mirroring (be it for a Gerber, Geometry or Excellon objects).

  6. Log in to comment