Commit Graph

229 Commits

Author SHA1 Message Date
Stefan Agner
38fde3cef2 Use 0805 package for Audio 2.2uF/25V capacitors
Fixes: #20

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-05-29 12:57:32 +02:00
Stefan Agner
465755b9b1 Fix top right corner radii
Make sure the top right corner uses the same radii as the other three
corners.

Fixes: #23

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-05-10 17:20:55 +02:00
Stefan Agner
adc977f8c1 Use plated slots and adjust 5V trace to be above the GND plane
Signed-off-by: Stefan Agner <stefan@agner.ch>
v0.2
2021-04-27 23:48:06 +02:00
Stefan Agner
015d516feb Adjust edge cuts to fit case
Make sure the PCB doesn't conflict with the case's fasteners.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-27 23:22:04 +02:00
Stefan Agner
951656e0a7 Ventilation holes and silk screen
- Add multiple ventilation slots (move some traces for space)
- Add Home Assistant logo to the back
- Add Nabu Casa logo on the front
- Fixup reference designators placement in several cases

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-27 21:38:52 +02:00
Dominik Sliwa
c3384489e9 pcb fixups and cleanup
-Moved 5V dcdc converter to clear the heatsink and the LED
-adjusted gnd plane around the radio module

Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-04-27 18:43:51 +02:00
Stefan Agner
1699c93e59 Update silkscreen/adjust reference designators
Order some relevant reference designator. Use JP for all jumpers. Place
silkcreen neatly. Add some custom silk screen. Remove heat sink corner
marks on silk screen.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-27 16:59:52 +02:00
Dominik Sliwa
b1e3c7e17c pcb 0.2:
Changes:
Footrints:
-Modified DC Jack to accomodate CUI PJ-002A
-Modified RJ45 to increase clearance between shield and poe pins
-Modified m.2 mounting pads to avoid drc errors
Schematic:
-usb-c facing usb mux is supplied by +3v3VP
-added misc. capacitors
PCB
-min. annular ring for vias set to 0.125 from 0.2

Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-04-27 02:06:11 +02:00
Stefan Agner
c7340505c8 Use impedance for JLC7628 stackup/switch HDMI/SW2 placement
Use JLC7628 impedance values to get more options in color selection.
Also this leads to slightly wider traces typically, and it will be
easier to switch back to JLC2313 or the like than the other way around.

Also swap placing of HDMI/SW2 and rotate the heatsink by 90° for easier
routing.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-23 15:45:21 +02:00
Stefan Agner
ddafbeae6b Change button length and start layouting
Change the length and positioning of the buttons and start layouting a
bit. Move components where needed.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-22 20:07:46 +02:00
Stefan Agner
07570784f5 Update board setup
Use minimal track width/gap of 0.127mm. Use impedance calculated using
the JLCPCB calculator for the 85Ohm/90Ohm differential pairs and 50Ohm
single trace.

For the 100Ohm pair the JLCPCB calculator does not allow to specify a
track gap which leads to a track width of 0.127mm or bigger. Hence for
this I used https://www.mantaro.com/resources/impedance-calculator.htm
(with Er 4.05, h 0.095, t 0.035).

Also use vias of 0.45/0.2mm by default.

Fixes: #6
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-22 17:26:42 +02:00
Stefan Agner
147b4cd17e Update M.2 footprint
Update M.2 footprint and assign 3D model.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-22 13:50:13 +02:00
Stefan Agner
c75d968432 Increase hole size to fit M3
The current M2.5 holes work well for the soldered nuts from JAE
(SM3ZS067U310-NUT1-R1800). However, we are going to use a custom
standoff with a M2 thread (nut) and a screw to mechanically secure the
NVMe. The nut will have a border to fit the hole. That the standoff
still can fit a M2 thread we need M3 holes.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-22 11:21:32 +02:00
Stefan Agner
1749424f7b Place RGB LEDs between NVMe and CM4
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-21 00:30:56 +02:00
Stefan Agner
c01bfa5c9e Rework PCB Layout
Adjust some high level placement like M.2 or CM4 and heatsink. Remove
all traces and vias since most of the layouting has to be redone
anyways.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 17:51:59 +02:00
Stefan Agner
818c132a38 Use main 3.3V for CP2102N
Instead of using VBUS to power CP2102N use the main/NVMe 3.3V supply.
This makes sure that the device stays powered during reset, while making
sure the CP2102N is always powered and doesn't backfeed if no USB is
plugged in.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 17:02:35 +02:00
Stefan Agner
11f79076eb Add footprint for Pulse PA2467NL transformer
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 16:22:34 +02:00
Stefan Agner
f3d6f76db5 Improve PG-TSDSON-8 package
Make paste a bit smaller.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 16:20:38 +02:00
Stefan Agner
f12d8178a4 Add PG-TSDSON-8-1 package for Infineon BSZ440N10NS3
Add package for Infineon N-Channel MOSFET BSZ440N10NS3.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 15:59:26 +02:00
Stefan Agner
ffb1a161e1 Adjust rating/footprint size of some ceramic capacitors
Also update connector/jumper designator to make more sense.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 14:34:56 +02:00
Stefan Agner
e1079c97d4 Reannotate the complete schematics
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-16 00:22:28 +02:00
Stefan Agner
e2740025eb Adjust various parts to improve BOM
- Replace unusual/high value ceramics with lower value in parallel
- Use the same protection Shottky Diode in PoE as in regular input
  (B340LB-13-F)
- Replace PoE rectifier Diodes with B1100-13-F
- Replace PoE Inductor (SRN6045TA-3R3Y) with the same part from 5V power
  supply (Taiyo Yuden NRS8030T3R3MJGJ)
- Correctly specify Pulse Electronics transformer

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-15 23:52:59 +02:00
Stefan Agner
3712a66f11 Add resistors to potentially tune boost converter
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-15 21:56:01 +02:00
Stefan Agner
8382d3b79c Adjust Manufacturer/PartNumber for some parts
- Use Diodes B2100-13-F consistently
- Define part for pin headers
- Replace N-Channel MOSFET for PoE with BSZ440N10NS3GATMA1
- Define Input protection MOSFET DMP3013SFV-7

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-15 21:49:27 +02:00
Stefan Agner
d2b0064975 Use CamelCase style naming for all schematic files
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-15 20:44:58 +02:00
Dominik Sliwa
ed6e1bb844 PoE: Migrate to opto-less feedback topology
Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-04-15 14:50:37 +02:00
Dominik Sliwa
281d0f4d1b LightBlue.kicad_sym: Add Pulse PA2467NL symbol
Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-04-15 14:49:57 +02:00
Stefan Agner
aa2b0d7c5c Adjust input/output capacitors for 5V/3.3V supply
Add/change some capacitor to be 33uF bulk capacitors.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-14 12:40:01 +02:00
Stefan Agner
ce101e1257 Add ideal Diode using FET for non-PoE variant
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-14 12:16:26 +02:00
Stefan Agner
ca5247e848 Adjust PCB outline and placement of connectors/buttons
Adjust the PCB outline and placement of buttons and connectors for the
next Prototype iteration.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-14 10:03:57 +02:00
Dominik Sliwa
8b0391d0c9 Power.kicad_sch: Move to ceramic capacitors
Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-04-13 22:45:08 +02:00
Stefan Agner
20c5478ac6 Assign footprints and annotate components
Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-13 15:15:40 +02:00
Stefan Agner
4b291f74b7 Replace full sized HDMI with micro HDMI
Fixes: #17

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-13 15:03:10 +02:00
Stefan Agner
513bd69bf3 Redesign buttons/switches
Remove power/reset/recovery switch. Power and reset is not really required
and recovery mode (USB Boot) can be triggered via jumper. Make the Fan
and RPiLED a new separate config so we can leave them unpopulated. Add a
second GPIO controlled switch.

Fixes: #16

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-13 14:32:30 +02:00
Stefan Agner
dfd56d8a00 Fix CP2102N footprint
Choose Silicon Labs specific QFN20 footprint.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-13 13:32:36 +02:00
Stefan Agner
7acf8b5516 Replace Diodes AP64501SP-13 with Rohm BD9D321EFJ DC-DC converter
The Rohm has a lower current rating and input voltage range, but should
be good enough for our use case. It has better availability and is quite
a bit cheaper than the Diodes part. This also requires different
inductors and some different resistor values.

Fixes: #12

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-13 11:20:09 +02:00
Stefan Agner
80925baff1 Use HRO USB-C part number to match footprint
The footprint is not compatible with the JAE part. Specify the HRO USB-C
part number instead.

Fixes: #14

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-12 18:04:01 +02:00
Stefan Agner
a9e7f558de Replace CP2102N and SW4
Use a jumper instead of a switch to change between CM4 USB Device and
CP2102N. Replace CP2102N QFN24 with QFN20 variant. Make CP2102N to be
bus-powered by default.

Fixes: #7

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-04-08 23:51:53 +02:00
Stefan Agner
1c3972a72a Replace CUI SJ2-35953A with through hole HRO PJ-3973-6A
Use a through hole 3.5mm Audio jack to make sure it does nto get teared
off the board accidentially that easily.

Fixes: #9

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-03-24 23:37:31 +01:00
Stefan Agner
999eb03c44 Add pull-ups for Radio.~RESET/~BOOT
Make sure those signals are well defined even when not be driven from
the CM4 side. Also rename Radio.BOOT to Radio.~BOOT since its a low
active signal.

Fixes: #10

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-03-12 20:50:48 +01:00
Dominik Sliwa
6fb1a6f392 USB.kicad_sch: Add CRFILT cap and adjust resistors
CRFILT capacitor is required for the chip to start properly
and 10k pull-downs were too strong according to the datasheet.

Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-03-04 21:55:55 +01:00
Dominik Sliwa
b715241795 FrontRTC.kicad_sch: fix C64 value
volt symbol was not capitalised.

Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-03-04 17:45:20 +01:00
Dominik Sliwa
bf3ae47b45 sdcard.kicad_sch: add 10k pull-up on SD.PWR
During boot process cm4 puts that pin briefly in input mode.

Signed-off-by: Dominik Sliwa <dominik@sliwa.io>
2021-03-04 17:45:20 +01:00
Stefan Agner
39b7e1cc6c Use the correct Part Number for the Würth PoE Transformer
Fixes: #2

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-03-04 10:38:14 +01:00
Stefan Agner
19e9777b94 Connect RTC VDD/VSS correctly
Fixes: #4

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-03-04 10:38:08 +01:00
Stefan Agner
34b7a506e6 Use correct Manufacturer/Part Number for SW5 (recovery switch)
Fixes: #3

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-03-04 10:05:44 +01:00
Stefan Agner
27a931be06 Specify charactristics of 0805 resistor in PoE
The reason we choose 0805 over 0402 is the required Wattage. Specify it
in the charactristics.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-02-16 12:07:37 +01:00
Stefan Agner
a60ae77529 Replace Ohm sign with R
Adhere to our KiCad Style Guide and use R instead of the Ohm sign.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-02-16 12:06:51 +01:00
Stefan Agner
c986be6af8 Fix footprint of the PoE bulk capacitor C80
Use the correct footprint for the PoE bulk capacitor C80. The TI
evaluation module circuit uses a Panasonic EEE-FK1J470P bulk capacitor.
The series has other better suited alternatives like EEE-HA1J470UP, but
the F-size code seems to be a sensible choice.

Fixes: #1

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-02-16 11:26:41 +01:00
Stefan Agner
dfc5c4d37d Add CM4 board to board connectors
Add the CM4 board to board connectors using separate symbols. This is a
bit a hack, but makes sure two pieces appear in the BOM.

Also, this seems to upgrade all the schematic to the latest KiCad
schematic version.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2021-02-15 17:50:46 +01:00