UPDATE (11/09/2024): Graham Sutherland’s software for extracting stackup recordsdata from JLCPCB’s software programming interface (API) has been expanded — and now contains KiCad board recordsdata along with Altium XML and generic JSON recordsdata.
“My script for auto-generating stackup templates for all of JLCPCB’s board stackups now outputs KiCad board templates in addition to Altium stackup recordsdata,” Sutherland explains. “Ought to hopefully save everybody some effort and time.”
Unique article continues under.
Maker Graham Sutherland has written a software to extract layer stack recordsdata for JLCPCB’s multi-layer PCBs in Altium XML and JSON format — making it simpler to precisely design boards for manufacturing at JLCPCB in your favourite software.
“I made a script that extracts multilayer board stackups from JLCPCB’s API [Application Programming Interface], for each layer rely, board thickness, and copper weight possibility,” Sutherland explains. “It interprets the uncooked API information right into a clear normalized JSON format, and likewise into Altium stackup recordsdata. The normalized JSON ought to be straightforward to devour if you wish to construct stackups for different EDA [Electronic Design Automation] instruments. Every little thing is fairly effectively documented, so it ought to be straightforward to change and replace to your wants.”
If you happen to’re planning a four-or-more layer board for manufacturing at JLCPCB, a brand new assortment of stackup recordsdata might turn out to be useful. (📷: JLCPCB)
Whereas it is fully attainable to design a printed circuit board that has solely a single layer, it is extra widespread for contemporary PCBs — particularly these being despatched away for skilled manufacturing fairly than being etched at house — to have a number of layers. How these layers are stacked varies from producer to producer and board to board, resulting in the necessity to have the ability to outline the stack in software program — which, in Altium, means an XML-format stackup definition.
Sutherland’s software queries JLCPCB’s API and routinely generates stackups for all supported board thicknesses, outer and interior copper weights, and layer variations from 4 all the way in which to 32 — a complete, on the time of writing, of 313 stackup recordsdata. These are processed into two codecs: Altium XML and normalized JSON, the latter of which will be additional processed into codecs anticipated by different EDA instruments with out having to re-run the extraction script.
The stackup recordsdata, and the script that generated them, have been printed to GitHub; the script is offered below the permissive MIT license, whereas the normalized JSON recordsdata and XML recordsdata are offered below a public area license. “The uncooked JSON recordsdata within the raw_json
listing are the property of JLCPCB,” Sutherland notes, “and are included right here for reference solely.”