Author Topic: JLC PCB - reorientation of octagonal pads  (Read 5664 times)

0 Members and 1 Guest are viewing this topic.

Offline phil from seattle

  • Super Contributor
  • ***
  • Posts: 1029
  • Country: us
Re: JLC PCB - reorientation of octagonal pads
« Reply #25 on: July 14, 2020, 06:09:22 am »
Well, I can't say for other software but I seriously doubt this is Eagle's fault. The JLCPCB gerber viewer shows correct orientation of the pads. And, I've used most of the other popular board houses - PCBWay, ALLPCB, Seed, OSHPark,  and several others on at least 60 different designs. None of them have had this issue. Every Gerber viewer I've ever used shows the pads correctly.  I've been getting PCBs made for around 14 years now and have never even heard of this problem until now.
 

Online xavier60

  • Super Contributor
  • ***
  • Posts: 2835
  • Country: au
Re: JLC PCB - reorientation of octagonal pads
« Reply #26 on: August 04, 2020, 02:12:23 pm »
"Octagonal pads are rotated by 22.5 degrees in gerber plots. Most australian manufacturers then rotate them back again for you"
from https://airborn.com.au/layout/autotbug.html
Maybe some manufacturers are correcting octagonal pads that don't need to be.

« Last Edit: August 05, 2020, 07:34:39 am by xavier60 »
HP 54645A dso, Fluke 87V dmm,  Agilent U8002A psu,  FY6600 function gen,  Brymen BM857S, HAKKO FM-204, New! HAKKO FX-971.
 

Offline mkstevo

  • Newbie
  • Posts: 6
  • Country: england
Re: JLC PCB - reorientation of octagonal pads
« Reply #27 on: January 15, 2021, 06:16:58 pm »
I've had this problem in the past. An order was delivered with the large octagonally plated screw holes I'd added rotated, the points of the octagon just connected the copper plane to the screw hole/via. This caused the top copper plane to become shorted to the bottom copper plane, creating a short circuit between 5V and 0V. I like to have a large plated area around any screw holes as it helps me to visualise the screw heads or stud dimensions so that I can avoid running tracks close to any screw holes, avoiding the risk of a screw being able to connect to a track and create a potential short if that screw is over tightened. I have, since this experience, made a note not to use octagonal pads for any drill holes.

I use Eagle 7.7. On exporting the designs to Gerbers, I often check them using https://tracespace.io/view/ I sometimes also use an offline Gerber viewer for macOS too. On the particular design that caused me problems I wondered if I'd made a mistake, I triple checked it with as many Gerber viewers as I could and none of them rotated the octagonal pads for either the vias I used as screw holes nor the resistor and capacitor pads that are the default shape for Eagle. All had been rotated on the boards made by JLCPCB.

I'm not saying that it wasn't an export issue by Eagle, but as every Gerber viewer I tried showed the correct orientation it seems possible that there may be a formatting problem or mismatch with how JLCPCB process octagonal pads.

On raising the issue with JLCPCB they re-manufactured the boards free of charge. I changed the hole shape to round before submitting the file for a second time. Just in case.

Either way, as I have no problem with the rotated pads for resistors and capacitors shorting to my copper planes it hasn't caused me any further failures.

On the most recent designs I have not seen this issue on the resistor or capacitor pads, although reading this thread it seems to appear at random intervals and not always on all boards in the same batch.
 

Offline atommann

  • Newbie
  • Posts: 7
  • Country: cn
Re: JLC PCB - reorientation of octagonal pads
« Reply #28 on: January 16, 2021, 11:42:14 am »
We've figured out how this issue happened at JLCPCB and I try to explain it in this post.

Octagonal pads and vias are very common in Eagle. When Eagle outputs Gerbers, an aperture macro called OC8 is used to represent these pads and vias.

Code: [Select]
%AMOC8* <1>
5,1,8,0,0,1.08239X$1,22.5* <2>
%
%ADD10C,0.00700*%
%ADD11C,0.00300*%
%ADD12R,0.47244X0.19685*%
%ADD13OC8,0.06000*% <3>

  • Start to define the OC8 macro, AM = Aperture Macro
  • The contents of OC8, primitive code 5 means Polygon, 1 means Exposure On, 8 means octagon, 0,0 is the x/y coordinate of center point, 1.08239X$1 means Diameter, 22.5 is the rotation angle.
  • This line defines an aperture D13, it uses macro OC8.

This figure below is from The Gerber File Format Specification November 2013 Revision J1 https://web.archive.org/web/20130630231317/http://www.ucamco.com:80/en-us/downloads.aspx, page 92, which is about primitive code 5 (polygon).



Note: In newer Eagle versions (such as 9.6.2), the octagonal pads are output as standard Regular polygon, macro OC8 is still in the file, but it not refered anymore. Here's a related thread https://forums.autodesk.com/t5/eagle-forum/gerber-regular-polygon-add-lt-nr-gt-p-vs-add-lt-nr-gt-oc8/td-p/7864702

Code: [Select]
%ADD32P,1.649562X8X112.500000*%

In the CAM tool which is used to process the Gerbers, there is a parameter called: xxx_set_octagon_rot, it has two options:
* no - starting rotation angle of an Octagon = 22.5 (default)
* yes - set it to 0

Now, if this xxx_set_octagon_rot = No:

It means "starting rotation angle of an Octagon = 22.5 (default)", we can know its starting rotation angle, it's like this:



Because OC8 has a 22.5 parameter, so when the CAM reads in the Gerbers, all octagonal pads will be rotated 22.5 degrees (the right one in the above figure will be used as the template), and we get the wrong angles as the users reported in this thread.



If this xxx_set_octagon_rot = Yes:

"yes" (set it to 0): This is the same with the definition in Gerber spec, in this case, one vertex is on the horizontal axis x. When the CAM tool reads in the Gerbers, it just rotate octagonal pads by 22.5 degrees, this is just the rotation angle in Eagle and customers will get the right boards!



On Dec 29 2020, JLCPCB upgraded the system just for this issue, to prevent this issue from happening in the future: Every file will be scanned for these OC8 macros, and the person who processes these Gerbers will be warned that these designs have octagonal pads/vias.

This afternoon (Jan 16, 2021), I placed 20 true orders (Eagle 7.7.0 with the arduino example) in JLCPCB's website and got the process "ok" file, the rotation angle for octagonal pads in all "ok" files are correct.

PS: Don't know how to insert the inline images. I need the help from the moderator. Thanks.
« Last Edit: January 16, 2021, 12:01:52 pm by atommann »
 
The following users thanked this post: oPossum, thm_w, IconicPCB, cgroen


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf