#Drone FC with castellated PCB sensors

1 messages · Page 1 of 1 (latest)

sour sleet
#

Version 3 of my drone FC, first one used spark fun premade boards on a simple PCB, second one tried to move those all to one board but I messed something up and couldn't debug the I2C lack of communications. This one is a step back and I'm moving all the sensors back off the board but onto castellated boards so they can be secured for the final product if debugging goes well.

**I am new to PCB design, please don't hold back on tips, even if minimal. **

All boards are on a 4 Layer SIG / GND / PWR / SIG layout and the polyfills are omitted from the photos.

I will be adding 3 more boards once I design them. One each for the ICM-20948, BMP-581, and the main board containing a Teensy and the power delivery/regulation, switches, etc.

polar hare
#

okay, i2c pullups: i'd put them on the board with the microcontroller/master, rather than out with one of the sensors. it'll probably work regardless, but it would reduce my odds of getting confused and putting pullups in two places or something.

#

also 3.3V with 6.8k pullups gets you... about half of the normal amount of current i think i normally see. prooobably fine, but it could make it harder to hit high clock speeds especially if you start spreading these sensors out (which it sounds like is the opposite of your plan)

#

if you're not connecting anything to ENV_SCL and ENV_SDA you might not need to pull them up? obviously datasheet (which i have not checked) would override me, but if they're unused i2c lines they should be able to just hang out at ground.

#

if you included testpoints on them just in case you wanted to do something with them, then leaving in pullups (or at least pads for them) would be perfectly reasonable.

#

i'd use 3.3k resistors. example schematics in the datasheet use 2.2k

#

pointing those 3.3V symbols down, on the right side of the schematic, is weird/confusing

#

R8/R9 are probably unnecessary, unless you want to leave yourself the option to omit the resistors and jumper in some other configuration (which... you probably wouldn't do since you don't even have the connections for SPI)

#

but, i don't see any errors, i'd expect it to work as-is 👍

sour sleet
sour sleet
polar hare
#

if i2c went a lot faster than it does, splitting the pullups could lead to some weirdness. it'd technically probably be okay, but there's no need.

polar hare
sour sleet
polar hare
#

bno086 layout seems fine. i assume the main board layout isn't final, since there's no image of the copper.

#

looks like R4 uses a different footprint from the other resistors. if intentional, no problem, otherwise might want to figure out what happened

#

did you even need to run signals on the bottom? you could do sig/gnd/pwr/gnd and get extra capacitance.

sour sleet
#

Yeah, I'm going to work on the breakout boards first before the main board. For the R4, I just imported it from the manufacture website

#

Thats a really good idea, I only needed one trace for the 4th later

sour sleet
#

Very simple BMP581 board, could make board smaller but rather constant size for the main board

wanton slate
sour sleet
#

I'll fix those, thank you!

sour sleet
#

The ICM-20948 board

wanton slate
#

What size annular rings did you end up going with?

sour sleet
#

manufacture I am using says delta of at least .15mm from via size so I did +0.2mm

#

if thats what angular ring means

wanton slate
#

To clarify, that’s the design rule set to for min annular ring?

sour sleet
#

I'm not sure what the min annular rule DRC is but I ensured the via diameter vs via hole size was at least 0.2mm larger

wanton slate
#

In Altium if you press T, D while in the pcb editor it’ll bring up your design rules

polar hare
# sour sleet The ICM-20948 board

all looks okay. i'm assuming that level shifter wants pull-ups on both sides.
your routed traces for SDA/SCL have awfully abrupt turns; while i'm sure they'll work (and would work even if you made a hard 90 degree turn), making just two 45 degree turns would be more normal, there.

sour sleet
#

fixed version

polar hare
#

if you had a bunch of traces on adjacent layers and you were worried about crosstalk between them, then maybe making them orthogonal would help.

sour sleet
#

okay, I see thank you

polar hare
#

otherwise, you want to keep sharp turns minimized to help emi.
(i manually curve all of my traces, but that's 99% aesthetics and 1% helping to reduce emi. 45 degree angles should, afaik, more than suffice unless you're doing microwave rf.)

pallid lantern
#

Unrelated to your design but what broken software is being used here that it shows your castellated pads like this?

wanton slate
#

Altium Designer @pallid lantern

sour sleet
#

The main board that holds all the catellated boards

polar hare
#

all seems reasonable to me. only thing i noticed was that you misspelled "calibrate" 🙂