# US 12,216,975 B2 · Methods and systems for printed circuit board component placement and approval

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,216,975 B2
- Document ID: US12216975B2
- Status: Granted
- Kind: B2
- Application number: 18/399,436
- Filed: 2023-12-28
- Published: 2024-04-18
- Granted: 2025-02-04
- Earliest claimed: 2021-09-27
- Assignees: Boardera Software 1nc.
- Applicants: Boardera Software Inc.
- Inventors: Curtis Hunter; David Workman
- Web page: https://patentgrep.com/patent/US12216975B2

## CPC

- G06F 30/31: Design entry, e.g. editors specifically adapted for circuit design
- G06F 30/392: Floor-planning or layout, e.g. partitioning or placement
- H05K 3/0005: {for designing circuits by computer}
- H05K 3/30: Assembling printed circuits with electric components, e.g. with resistors
- G06F 2115/12: Printed circuit boards [PCB] or multi-chip modules [MCM]
- H05K 1/0269: {for visual or optical inspection}
- H05K 13/0015: {Orientation; Alignment; Positioning}
- H05K 2203/163: Monitoring a manufacturing process
- H05K 2203/168: Wrong mounting prevention
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H05K: PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS

## Abstract

An aspect of the disclosed embodiments is a method for printed circuit board (PCB) component placement comprising: graphically displaying, on a display device, PCB design features of a PCB design; and providing a user interface control for designating one or more of the PCB design features as electrical contacts for a first selected electrical component. Other aspects are disclosed.

## Claims

### Claim 1

A method for printed circuit board (PCB) component placement comprising:
receiving one or more electronic PCB design files defining a PCB design;
processing the one or more electronic PCB design files to determine which PCB design features of the PCB design are electrical contact features; and
for each electrical component of a plurality of electrical components to be assembled with the PCB design:
determining whether a footprint of the electrical component positioned and oriented in accordance with first XYRS data for the electrical component would register with electrical contact features of the PCB design;
in the event that the footprint of the electrical component positioned and oriented in accordance with first XYRS data for the electrical component would not register with electrical contact features of the PCB design:
conducting a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design; and
generating second XYRS data for the electrical component based at least on the determined X-Y position and orientation of the footprint.

### Claim 2 (depends on 1)

The method of claim 1, wherein conducting a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design comprises:
graphically displaying, on a display device, at least a portion of the PCB design including a plurality of PCB design features determined to be electrical contact features; and
providing a user interface control for designating at least one displayed electrical contact feature as an electrical contact for the electrical component.

### Claim 3 (depends on 2)

The method of claim 2, comprising:
prior to generating the second XYRS data, providing a user interface control for associating one of the displayed electrical contact features with a first electrical lead of the electrical component,
wherein the determined X-Y position and orientation for the footprint of the electrical component would also cause the electrical contact feature associated with the first electrical lead of the electrical component to register with a portion of the footprint that corresponds to the first electrical lead.

### Claim 4 (depends on 1)

The method of claim 1, wherein conducting a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design comprises:
processing at least the first XYRS data of the electrical component to estimate a region of the PCB design in which the electrical component is to be placed;
processing electrical contact features within the region to determine the set of electrical contact features in the region that could together register with the footprint; and
determining an X-Y position and an orientation for the footprint that would cause the footprint to register with the determined set of electrical contact features.

### Claim 5

A system for printed circuit board (PCB) component placement comprising:
a user interface provided on a display device for receiving one or more electronic PCB design files defining a PCB design; and
at least one processor executing:
a contact process for processing the one or more electronic PCB design files to determine which PCB design features of the PCB design are electrical contact features; and
a registration process that, for each electrical component of a plurality of electrical components to be assembled with the PCB design:
determines whether a footprint of the electrical component positioned and oriented in accordance with first XYRS data for the electrical component would register with electrical contact features of the PCB design;
in the event that the footprint of the electrical component positioned and oriented in accordance with first XYRS data for the electrical component would not register with electrical contact features of the PCB design:
conducts a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design; and
generates second XYRS data for the electrical component based at least on the determined X-Y position and orientation of the footprint.

### Claim 6 (depends on 5)

The system of claim 5, wherein the registration process conducts the corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design including:
graphically displaying, on a display device, at least a portion of the PCB design including a plurality of the PCB design features determined to be electrical contact features; and
providing a user interface control for designating at least one displayed electrical contact feature as an electrical contact for the electrical component.

### Claim 7 (depends on 6)

The system of claim 6, wherein the registration process:
prior to generating the second XYRS data, provides a user interface control for associating one of the displayed electrical contact features with a first electrical lead of the electrical component,
wherein the determined X-Y position and orientation for the footprint of the electrical component would also cause the electrical contact feature associated with the first electrical lead of the electrical component to register with a portion of the footprint that corresponds to the first electrical lead.

### Claim 8 (depends on 5)

The system of claim 5, wherein the registration process conducts a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design including:
processing at least the first XYRS data of the electrical component to estimate a region of the PCB design in which the electrical component is to be placed;
processing electrical contact features within the region to determine the set of electrical contact features in the region that could together register with the footprint; and
determining an X-Y position and an orientation for the footprint that would cause the footprint to register with the determined set of electrical contact features.

### Claim 9

A non-transitory computer readable medium embodying a computer program executable on at least one processor for printed circuit board (PCB) component placement, the computer program comprising:
computer program code for receiving one or more electronic PCB design files defining a PCB design;
computer program code for processing the one or more electronic PCB design files to determine which PCB design features of the PCB design are electrical contact features;
computer program code for, for each electrical component of a plurality of electrical components to be assembled with the PCB design:
determining whether a footprint of the electrical component positioned and oriented in accordance with first XYRS data for the electrical component would register with electrical contact features of the PCB design;
in the event that the footprint of the electrical component positioned and oriented in accordance with first XYRS data for the electrical component would not register with electrical contact features of the PCB design:
conducting a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design; and
generating second XYRS data for the electrical component based at least on the determined X-Y position and orientation of the footprint.

### Claim 10 (depends on 9)

The non-transitory computer readable medium of claim 9, wherein the computer program code for conducting a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design comprises:
computer program code for graphically displaying, on a display device, at least a portion of the PCB design including a plurality of the PCB design features determined to be electrical contact features; and
computer program code for providing a user interface control for designating at least one displayed electrical contact feature as an electrical contact for the electrical component.

### Claim 11 (depends on 10)

The non-transitory computer readable medium of claim 10, comprising:
computer program code for, prior to generating the second XYRS data, providing a user interface control for associating one of the displayed electrical contact features with a first electrical lead of the electrical component,
wherein the determined X-Y position and orientation for the footprint of the electrical component would also cause the electrical contact feature associated with the first electrical lead of the electrical component to register with a portion of the footprint that corresponds to the first electrical lead.

### Claim 12 (depends on 9)

The non-transitory computer readable medium of claim 9, wherein the computer program code for conducting a corrective procedure to determine an X-Y position and orientation of the footprint that would register with a set of electrical contact features of the PCB design comprises:
computer program code for processing at least the first XYRS data of the electrical component to estimate a region of the PCB design in which the electrical component is to be placed;
computer program code for processing electrical contact features within the region to determine the set of electrical contact features in the region that could together register with the footprint; and
computer program code for determining an X-Y position and an orientation for the footprint that would cause the footprint to register with the determined set of electrical contact features.
