I have an Altium design with ~20 sheets in a hierarchy design. When I uploaded it to Quilter, every sheet said it failed to parse. With a lot of trial and error, I got it working and learned a few things:
It is possible to use a hierarchical design in Altium in such a way that Altium has no errors / warnings, but Quilter will not parse it. Sometimes, deleting the sheet symbol and recreating it fixes the problem. Other times, I have up and flattened that section.
Because Quilter will not tell you which sheets are the problem, you best way to troubleshoot is to upload parts of the design. If you have Top → 4 sheets (A,B,C,D) and each of those 4 sheets go to 4 sheets (A1-A4, B1,-B4). You can upload a section (A,A1,A2,A3,A4) to test just that part. If all the sub-sections parse, but the whole thing doesn’t, you can start deleting entries from the Top page and seeing if that parses. Then you can isolate when sheet symbol links in the Top sheet are causing problems. Hopefully recreating the sheet symbol will fix the issue.
Note, if you are missing a file: (ie A needs A1,A2,A3,A4 and you upload A,A1,A2,A3 and not A4) all the sheets with fail to parse. Its the same error as if there’s a real issue, but you just forgot to upload a file. To be careful.
Given this, you end up uploading designs to test what parses a lot. And if you have big board, it can be very slow to upload and process just to learn on piece of information about the parsing problem. I ended up creating an empty board and uploading that instead. You get lots of warnings about missing components, etc, but for testing the schematic parsing it doesn’t matter and it loads much faster.
Suggestions for Quilter:
- Support not uploading the PCB board for a ‘schematic validation’ only step. This would make it much easier to iterate faster on finding the problem and probably would save a good amount of processing resources on your end.
- Do not fail every sheet when there is a parse error. Would make it much easoer to find the underlying problem.
- Catching a few basic errors with better messages. If a sheet isn’t uploaded and you can’t find that, that would be a useful message with the name of what you can’t find.