Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Controls daughter pcb #21

Draft
wants to merge 42 commits into
base: master
Choose a base branch
from
Draft

Controls daughter pcb #21

wants to merge 42 commits into from

Conversation

UrgentKnight761
Copy link
Member

@UrgentKnight761 UrgentKnight761 commented Oct 21, 2023

Quality Assurance Checklist

To make reviews more efficient, please make sure the board meets the following standards and check everything off once the board meets the quality check. Once everything has been checked, the assigned reviewers will begin the review process. Edit this description to check off the list.

There are exceptions with all guidelines. As long as your decisions are justified, then you are good! Contact the reviewers or the leads about any exceptions.

Minimum Prerequisites

  • Pushed changes to branch.
  • The board passes ERC and DRC.
    • Note some ERC warnings are acceptable.
  • All traces are routed.
  • Units are in metric.

2D Spacing

  • The components are spaced out at an optimal distance.
    • All components can be easily hand-soldered.
    • IPC-SM-782A Standard requires a minimum distance of 1.0mm from edge to edge.
  • Components that are in parallel with each other are spaced out at an equal distance when possible.
  • The components are aligned with each other when possible.
  • Components are grouped based off of functionality.
    • E.g. all components for CAN should be grouped.
  • Bypass capacitors are less than 1cm away from their respective IC's power pins.

3D Spacing

  • Layout of components have been placed with mounting location and usage of the board in mind.
    • Are PCBs going to be stacked on above/below this board? Are tall components placed accordingly?
    • Are buttons and lights easily accessible and viewable?
    • When mounted into the car, are the heights of the components and connectors accounted for?
  • Location of connectors and wires going out of the board will prevent messy wiring.
    • Are all the wires that are going in the same direction placed on the same edge of the board?

Components

  • Custom footprints have been double checked with the datasheet.
  • Pin 1 of the footprint is labeled in some way.

Copper Layer

  • The trace widths and trace clearances are greater than JLCPCB's minimum requirements.
  • The trace lengths are as short as possible.
    • Can there be a more optimal route if you go to another layer?
  • Each trace's width is capable of handling the expected current flow.
    • Use PCB width calculator to calculate trace width.
  • *No sharp corners. No trace angles equal to or less than 90 degrees.
  • Traces are in parallel with each other when possible.
    • E.g. traces connected between an IC and MCU can be placed in parallel with each other.
  • There are no random trace appendages.
  • Vias placed in copper pads are fully encompassed in the copper pads.
  • Through-hole components do not have extraneous vias.

*Not really a problem for modern manufacturing techniques but good practice and important for high speed signal integrity.

Silkscreen Layer

  • Visible text sizes are greater than JLCPCB's minimum requirements.
  • All visible text is on the silkscreen layer.
  • All reference labels of each component are not overlapping a copper pad or another component.
  • All connector pins are labeled with a meaningful and helpful name.
  • All LEDs are labeled with a meaningful and helpful name.

Edge Cut Layer

  • The dimensions of the board and the mounting holes are nice values in metric i.e. no long decimals.
  • The physical outline of the board is on the edge cut layer.
  • Edge cuts are straight and parallel with opposite edge of the board.
  • Mounting holes are aligned.
  • Corners are curved and contoured to mounting holes.

IMPORTANT NOTICE

  • I am confident that this board will be safe to use in a safety critical environment.
  • I had fun :)

Other Comments

Write any comments about the board that would help the reviewers here.

@UrgentKnight761 UrgentKnight761 self-assigned this Oct 21, 2023
@UrgentKnight761 UrgentKnight761 marked this pull request as draft October 21, 2023 18:18
@manthanand
Copy link
Contributor

Could you rename the PCB to say Controls-LeaderDaughter.

@manthanand
Copy link
Contributor

image
Could you make this neater? I think if a new member saw this they wouldn't really understand what to do. The new version changes should be more descriptive as well (cuz tbh I don't exactly remember what was wrong and I was the one who found it).

@UrgentKnight761
Copy link
Member Author

image Could you make this neater? I think if a new member saw this they wouldn't really understand what to do. The new version changes should be more descriptive as well (cuz tbh I don't exactly remember what was wrong and I was the one who found it).

I fixed the new version issue but what do you mean when you say it is not neat?

@Cam0Cow
Copy link

Cam0Cow commented Oct 31, 2023

image
Since these go directly to the fans, you probably want flyback diodes on each of the transistors.

@Cam0Cow
Copy link

Cam0Cow commented Oct 31, 2023

image
The ignition switch still has to be connected.

Copy link
Contributor

@Lakshay983 Lakshay983 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Readme wiring diagram looks dope af

GPIO expander chip:

  • Add debouncing for the 3 button switches
  • Add bypass caps on the Vdd pins on the chip
  • The Reset pin is shorted to 3.3V and it's active low so you should put a pullup resistor to 3.3V
  • The INIT pin is open drain active low so you need a pullup resistor on the line since you need to "pull up" the 0 to a 1.
  • Chip footprint no work

You'll need current limiting resistors on those lights (prob just put a placeholder value and write a note to calc it later)

I think you're able to configure these pins as outputs so might be cool to also include the light outputs in this chip so all the lighting and IO will be through this chip (could also put in the ignition signals). Up to you and Controls (@IshDeshpa) tho since they'll need to program it. Works either way

I don't think that many test points are required for those power inputs Those test points are on the LeaderSOM

@Lakshay983
Copy link
Contributor

Do you need two mosfets for the fans? They'll always be at the same speed so they might as well just share the same signal

Copy link
Contributor

@Lakshay983 Lakshay983 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You don't need debouncing on those switches, only on the buttons

The gpio expander ic is kinda hard to read now. I'd recommend moving the chip and switches to a different sheet and use net labels to make that cleaner. Basically you have all the switches with their debouncing stuff in a separate section but then connect it to the chip with net lables.

Why is the brake potentiometer circuit different?

I put this in a diff comment but why 2 mosfets for driving fans?

@Lakshay983
Copy link
Contributor

You used 52465-2070 for the connections to the LeaderSOM, which is the male part of the connector. The female portion (what you should be using) is 53307-2071

@Lakshay983
Copy link
Contributor

I might be tweaking cuz I could've sworn I looked at that resistor value before and it was fine

For the photocoupler resistor value:
forward current: 20mA
forward voltage: 1.2V
Supply voltage: 12V

The resistor should be > (12-1.2)/(.020). So more than 540 ohms, which is double what y'all have rn.

@Lakshay983
Copy link
Contributor

Lakshay983 commented Jan 21, 2024

Nice job on the note addendums for each schematic I think it will make reviewing and future revisions much easier. I'd suggest that you move those notes closer to the relevant component. For example, putting the resistor calculations next to those resistors. If there's not enough space then that's fine you can move them to the side. Them being in the corner is hard to find.

Can you add why you need those optoisolators, the reasonings for your pullups and pulldown for the extender chip, the reasoning for the 2-pin 12V motor can connector, and the ordering of the display connector?

Also, you'll need 6 mounting holes: 4 for the PCB and 2 for the LeaderSOM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants