Append board insertion point changed 8.0.7

I’m working on a modified board design where we are changing out a component due to a performance issue with one of the parts. It’s a panelized board and I’m creating it the same way that I’ve always created panelized boards since v5.1.12. This panel was originally created in v8.0.5 and I had no other issues and have never experienced this issue before. I use an empty template for the panel pcb with details for the rails, corners and other features on the panel pcb then use the append board feature to add each individual board zooming in as far as I can with the smallest grid size to set the top/left corner of the board to match the template intersection lines drawn on the user drawings layer. This is always been one of the easiest no-brainer parts of creating the panel; I just have to remember to tick off the option not to renumber the reference designators. I had just updated KiCad from 8.0.5 to 8.0.7 just prior to editing the modified board and find that when I try to append the board onto the panel template, the append board insertion point has shifted down from the top/left corner to a point significantly lower (see image). Furthermore, I went back to the previous unmodified design template and the unmodified board (all created in v8.0.5) now also has this same issue; the append board insertion point is now much lower than it was instead of being in the top/left corner where it used to be. This makes it very difficult to line up the board precisely. I did a search through 8.0.6 and 8.0.7 release notes and didn’t find “append board” listed on any of the bug fixes or changes. In the image, the red circle was the former append insertion point, the green circle is the new append insertion point and the orange circle is the target intersection on the panel that where I am supposed to set the board on the panel (because the board corners are rounded, it’s actually a fill zone corner). Is there some setting in KiCad where I can reset the append board insertion point? I’ve tried using “reset grid origin” and “grid origin” to set the top/left corner of the board I’m trying to append to the panel but these don’t appear to have anything to do with the append insertion point.

I found a workaround which is extra work but does not require me to downgrade back to v8.0.5. I went ahead and appended the board using the new insertion point temporarily so that I could measure the offset from the old insertion point to the new one and found it to be exactly 6.00mm in the Y direction. Given this information I can insert using the new insertion point, knowing that the whole board is shifted up 6mm I can use the position tools (while the whole board is selected and forcing all objects to be unlocked) to move the whole inserted board down exactly 6.00mm into the proper append position. Would certainly rather do it the old way with a single click to set the appended board but at least I can get through the project now.

I was looking at the completed panel today after submitting the design to the fabricator and got a notice that v8.0.8 was available when I launched KiCad so I installed it but nothing changed as far as the append board insertion point. However I did a little digging as I was curious where the 6mm offset came from. Since I do almost all exclusively rounded corner boards I know I’m going to run into this on my next design and this archive will help me remember the details as well as the workaround for it.

With a rectangular board, this is not an issue. As I test, I converted my board to a test version with a 90 degree corner instead of the rounded corner in the top, left corner. The insertion point is at the top, left intersection of the edges where you expect. When you have rounded corners, there is only a virtual corner outside the board boundaries but for whatever reason, in v8.0.5 and earlier versions the PCB editor “knew” that this was a better insertion point than the one it currently is using. In my case the new insertion point is at the intersection of the vertical left edge of the board and top, left rounded corner. My corner is not simply an arc but a group consisting of an arc and a short horizontal and vertical straight line extension. The reason for this is to allow me to quickly switch back and forth between a board design that uses 4 mounting holes and one that has 4 inside rounded corners with no mounting holes in a few minutes (for various mounting and technical reasons). The length of this group happens to be 6mm which is where the insertion point is as shown:

I put a dimension in there showing the 6mm offset and converted the vertical short stub (that is part of the corner group) to the user comments layer so it shows up as a blue line and also added a horizontal construction line where the bottom of that stub intersects the main vertical edge of the board. The green circle shows the current append board insertion point in v8.0.7 and v8.0.8 (not sure about v8.0.6 since I never installed it). The red circle is the former insertion point in v8.0.5 and earlier. Although it shows lines intersecting there, they are not from the appended board but v-score lines from the pcb panel so this is a virtual corner with no board outlines actually touching this point. So it’s a little mysterious why it chose this new insertion point and even more mysterious as to how v8.0.5 and earlier knew to use the virtual insertion point on a board with rounded corners where the board outlines do not exist.

This is for anyone (including myself on a future panel project which almost all of mine are) for lining up the insertion point using the append board feature on a board with rounded corners.

  1. Set the user grid to the finest setting of 0.01mm.
  2. Measure or know the offset from the actual insertion point to the virtual corner of your board for the top, left rounded corner by doing an append board insertion test.
  3. Use the append board command as usual, and override the locks (also check “remember decision for this session” if you are going to append more boards to the panel than this one, I usually array the boards if they are all the same design which is where you have to remember to not allow KiCad to renumber you reference designators).
  4. Use the mouse scroll wheel to really zoom in on your panel v-score intersection lines so you have a giant cross-hair on your screen and carefully make sure your insertion point is at the exact center.
  5. So far everything above is what you would normally do anyway. Now on basic property clicked the locked box twice (it should be solid indicating some objects are locked and some are not, so clicking twice clears it so no objects are locked).
  6. Right click on the board and select positioning tools and select move exactly.
  7. Type the known offset (it will be a positive number in the Y axis) into the Move Y box and click OK or press enter.
  8. Use your mouse scroll button to zoom out and examine the insertion to see if it is in the proper spot. Repeat 1-8 for different designs until the panel is filled or use the array function if the panel has only one design.

During my lunch break I thought of a super easy way to fix this issue, and did a quick working test. Simply add a “dot” (circled in red) on the user drawings layer of the board you are going to append to the panel in the top, left corner, lining it up by using the X and Y coordinates from the horizontal and vertical edge cuts lines. Did a quick test and the PCB editor locks onto this dot as the insertion point and everything is like it was before in v8.0.5 or below for board appending with a rounded corner board.

It seems like you’ve found a regression bug. If you haven’t done so already, please report it so that it can be fixed.