-
Notifications
You must be signed in to change notification settings - Fork 1
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
Daybreak rework #24
base: master
Are you sure you want to change the base?
Daybreak rework #24
Conversation
… file and #auto_saved_files# (hopefully this does not break anything.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Today I learned that KiCAD doesn't differentiate between net labels and hierarchical labels if they're named the same thing. Pressing ~ on the net shows that KiCAD thinks they are electrically connected:
consider renaming the name of the nets to be different.
Some ERC stuff:
- the "Foward" pin on the MCU isn't connected to anything (misspelling go brrrr)
- power labels are global so you don't need to have hierarchical labels. Either way, the relevant hierarchical labels aren't on the sheet.
The dashboard PCB has pin 2 of the dashboard connector as BPS hazard and y'all have it as regen.
I thought we were getting rid of the 555 timer in favor of doing it in software? Doing it in hardware is also fine, was just wondering.
Make sure you update all the footprints and ask for a review on that before you start layout.
You shouldn't need to use the "SI8261ABC-IS" gate drivers, you should be able to just use the EL3H7 (right @ppatra126 ?) The gate of the mosfet doesn't sink that much current.
Right_Ind and Left_Ind are at 12V logic and referenced to GNDPWR, so you can't plug it into the gate of your mosfet since the 5V of the timer is referenced to GND (thus breaking the isolation barrier).
…e MinionBrdInterface so that they aren't connected. Changed Regen input to BPS Hazard light since we aren't using regen but will be alerting the driver of BPS faults.
…r to motor can and disconnected shield pins for now since I haven't seen them used (will chack against old version to see what the circuit looked like), copied power-in circuit from contactor board, added optoisolator to timer and blinker light connection.
…pefully this did not involve doing anything that wasn't supposed to be done.
Thank you both for the reviews! Lakshay: We decided we like abstracting the blinky stuff into hardware, so we plan to keep the timer unless @diyarajon prefers software. Prat: Additional changes/concerns:
Thank you very much! |
|
I would definitely add a P/N (part number) and footprint to every component on here. Looks like the footprints are OK but double check that they're the ones you want. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's probably all of my comments, it's not much but that's just because I'm not used to reviewing PCBs. If a @Lakshay983 or a @Champers5000 or a @FrankLiTX could review this for actual design errors it may be better.
Can you make J1 (the extra ADC connector) a molex connector since the pin headers aren't great for vibration C41 is a bypass cap for the usb-uart chip and it's pretty far away, can you make it closer to the 3v3 pin of that chip Make sure you update your board constraints: https://github.com/lhr-solar/UTSVT-KiCadLibraries?tab=readme-ov-file#standard-constraints-for-laying-out-board since I'm running DRC and it's giving me a ton of nets bridged since your clearance requirement is higher than needed Can you fill some of the areas that aren't filled. It's mostly for ✨ aesthetic ✨ I second Ishan on the 12V trace being a bit odd. I also don't like routing all the current for the lights technically next to the crystal oscillator. Maybe try routing it around the border of the board to get to motor connector. There's also the nuclear option of switching the carcan and motorcan stuff is so you don't need to route the 12V trace as much. The brake pot trace is longer than it needs to be. I think you can move C8 slightly closer to the oscillator and you can fit the trace inside that bus of red traces to go directly into the chip For the 3v3 traces, you can simplify a lil bit since there's some routing on the top and bottom layer going in different directions. you can get rid of this GND trace and via off of pin 47 and C11 by moving the SWDIO via out a little bit so you can form a thermal relief. For pin 63 and 12 instead of a via and long trace you could just do a small trace to a via per pin. I could spin some wacky signal integrity reason like you want both pins to have equal traces to the GND plane but it's mostly for aesthetic and reduction of traces. CAN routing can be improved a little bit so the signal traces aren't branching in a bunch of directions. Why route the break switch through the reset button? Could be routed under the reset button mayhaps. |
Also i don't think you need the 2 CAN testpoints if you have those DB9 outputs, it's also fine to keep em. |
…ctor 2 since we are now using more of the extra GPIO pins; added new components to layout.
@Lakshay983 Thank you for the suggestions! I'm still getting some "nets bridged" errors for certain components, even with the updated clearance requirements. Should I lower the reqs until they go away or exclude the errors? |
Roie returns! Thank you for the review.
|
smth to keep in mind here: all the current required for the mcu is going through this small pad. The STM probably won't be drawing enough current it to matter too much, but imo it's better to spec for higher currents. I like how you had it before where you did C42 C13 to power the mcu.
Most of our boards are 2 layer, we don't rlly have any crazy high frequency nor noise requirements + routing traces inside inner layers is iffy since you can't cut the inner traces (botch jobs on boards is smth we had to do a lot last year). Usually we try to reserve 4 layer boards for things that need to be extra small or have different requirements. My opinion on doing optimal 4 layer changes every other week pmuch but I think if we were to do it we'd keep top layer as power with some routing, bottom layer with routing, as uninterrupted GND layers with only a few traces. I get varying answers from people on how to do 4 layer and this is just what makes sense to me, so your opinion would be nice 👀 That's weird, I'll need to look at the net bridged stuff Make sure to run Tools->Cleanup Tracks and Vias to get rid of random traces left behind. I'm a big hater for GND traces. You can move around R18, C12, and C15 to get rid of em |
Ok! Also actually never mind looking into the "net bridged" stuff- I thought they were errors, but I think all the ones left aren't really errors since it's for the surrounding aperture thing and not the nets themselves. |
Also can you make that one 45 degree cap not 45 degrees, it's weird that it's the only thing that's 45 |
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
2D Spacing
3D Spacing
Components
Copper Layer
*Not really a problem for modern manufacturing techniques but good practice and important for high speed signal integrity.
Silkscreen Layer
Edge Cut Layer
IMPORTANT NOTICE
Other Comments
Write any comments about the board that would help the reviewers here.