(kicad_pcb (version 20230117) (generator "kicad-pcb-jayis1") (generator_version "7.0") (general (thickness 1.0) (legacy_teardrops no)) (paper "A4") (layers (0 "F.Cu" signal "top copper — components on this side") (31 "B.Cu" signal "bottom copper — ground pour") (32 "B.Adhes" user "B.Adhes") (33 "F.Adhes" user "F.Adhes") (34 "B.Paste" user "B.Paste") (35 "F.Paste" user "F.Paste") (36 "B.SilkS" user "B.Silk") (37 "F.SilkS" user "F.Silk") (38 "B.Mask" user) (39 "F.Mask" user) (40 "Dwgs.User" user "Dwgs.User") (41 "Cmts.User" user "Cmts.User") (44 "Edge.Cuts" user) (45 "Margin" user) (46 "B.CrtYd" user) (47 "F.CrtYd" user) (48 "B.Fab" user) (49 "F.Fab" user) ) (setup (pad_to_mask_clearance 0.05) (solder_mask_min_width 0.05) (grid_origin 0 0) (pcbplotparams (layerselection 0x00010fc_ffffffff) (plot_on_all_layers_selection 0x0000000_00000000) (gerbplotter_plotting_mode 1) (use_aux_axis_origin 0) (outputdirectory "gerbers/") ) ) (net 0 "") (net 1 "+3V3") (net 2 "GND") (net 3 "VBUS") (net 4 "VBAT") (net 5 "UWB_SCK") (net 6 "UWB_MISO") (net 7 "UWB_MOSI") (net 8 "UWB_CS#") (net 9 "UWB_IRQ") (net 10 "UWB_RST#") (net 11 "I2C_SCL") (net 12 "I2C_SDA") (net 13 "BTN_MODE") (net 14 "BTN_UP") (net 15 "BTN_DOWN") (net 16 "LED_DIN") (net 17 "UWB_RF") (net 18 "N$0009") ;; =========== Board outline (85 x 54 mm) =========== (gr_line (start 0 0) (end 85 0) (layer "Edge.Cuts") (width 0.1)) (gr_line (start 85 0) (end 85 54) (layer "Edge.Cuts") (width 0.1)) (gr_line (start 85 54) (end 0 54) (layer "Edge.Cuts") (width 0.1)) (gr_line (start 0 54) (end 0 0) (layer "Edge.Cuts") (width 0.1)) ;; =========== F.Fab silkscreen ==================== (gr_text "UWB-PHANTOM v1.0\nauthor: jayis1\nGPL-3.0-or-later\nAuthorized use only" (at 42 27) (layer "F.Fab") (size 1.0 1.0)) (gr_text "UWB ANT" (at 80 6) (layer "F.SilkS") (size 1.0 1.0)) ;; =========== Footprints ========================== ;; U1: ESP32-S3-WROOM-1 (top side, center-left) (footprint "RF_Module:ESP32-S3-WROOM-1" (layer "F.Cu") (at 25 20) (property "Ref" "U1" (at 25 15) (layer "F.SilkS") (effects (font (size 1.0 1.0)))) (property "Value" "ESP32-S3-WROOM-1-N16R8" (at 25 28) (layer "F.Fab") (effects (font (size 0.8 0.8)))) (property "Author" "jayis1" (at 25 30) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (pad "1" smd rect (at 17.4 18 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 1 "+3V3")) (pad "2" smd rect (at 17.4 20 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) (pad "3" smd rect (at 17.4 22 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 5 "UWB_SCK")) (pad "4" smd rect (at 17.4 24 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 6 "UWB_MISO")) (pad "5" smd rect (at 17.4 26 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 7 "UWB_MOSI")) (pad "6" smd rect (at 17.4 28 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 8 "UWB_CS#")) (pad "7" smd rect (at 17.4 30 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 9 "UWB_IRQ")) (pad "8" smd rect (at 17.4 32 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 10 "UWB_RST#")) (pad "9" smd rect (at 17.4 34 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 11 "I2C_SCL")) (pad "10" smd rect (at 17.4 36 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 12 "I2C_SDA")) (pad "11" smd rect (at 17.4 38 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 13 "BTN_MODE")) (pad "12" smd rect (at 17.4 40 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 14 "BTN_UP")) (pad "13" smd rect (at 17.4 42 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 15 "BTN_DOWN")) (pad "14" smd rect (at 17.4 44 90) (size 0.8 1.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 16 "LED_DIN")) (pad "GND" smd rect (at 25 26 0) (size 5 5) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; U2: DW3110 QFN-48 (top side, center) (footprint "Package_DFN_QFN:QFN-48-1EP_6x6mm_P0.4mm" (layer "F.Cu") (at 55 30) (property "Ref" "U2" (at 55 23) (layer "F.SilkS") (effects (font (size 1.0 1.0)))) (property "Value" "DW3110" (at 55 38) (layer "F.Fab") (effects (font (size 0.8 0.8)))) (property "Author" "jayis1" (at 55 40) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (pad "1" smd rect (at 51.4 26.8 0) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 1 "+3V3")) (pad "5" smd rect (at 51.4 28.4 0) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 5 "UWB_SCK")) (pad "6" smd rect (at 51.4 28.8 0) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 6 "UWB_MISO")) (pad "7" smd rect (at 51.4 29.2 0) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 7 "UWB_MOSI")) (pad "8" smd rect (at 51.4 29.6 0) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 8 "UWB_CS#")) (pad "22" smd rect (at 55 34.2 90) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 9 "UWB_IRQ")) (pad "23" smd rect (at 55.4 34.2 90) (size 0.2 0.8) (layers "F.Cu" "F.Paste" "F.Mask") (net 10 "UWB_RST#")) (pad "RFX1" smd rect (at 58.6 30 0) (size 0.4 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 17 "UWB_RF")) (pad "EP" smd rect (at 55 30 0) (size 4.4 4.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; U3: MAX17048 TDFN-8 (top side, near battery) (footprint "Package_DFN_QFN:TDFN-8-1EP_2x2mm_P0.5mm" (layer "F.Cu") (at 25 42) (property "Ref" "U3" (at 25 39) (layer "F.SilkS") (effects (font (size 1.0 1.0)))) (property "Value" "MAX17048G+T10" (at 25 45) (layer "F.Fab") (effects (font (size 0.6 0.6)))) (property "Author" "jayis1" (at 25 46.5) (layer "F.Fab") (effects (font (size 0.4 0.4)))) (pad "1" smd rect (at 24 43 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 4 "VBAT")) (pad "2" smd rect (at 24.5 43 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 4 "VBAT")) (pad "3" smd rect (at 25 43 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) (pad "4" smd rect (at 25.5 43 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) (pad "5" smd rect (at 25.5 41 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 1 "+3V3")) (pad "6" smd rect (at 25 41 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 11 "I2C_SCL")) (pad "7" smd rect (at 24.5 41 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 12 "I2C_SDA")) (pad "8" smd rect (at 24 41 0) (size 0.3 0.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) (pad "EP" smd rect (at 25 42 0) (size 1.4 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; ANT1: UWB chip antenna (right edge) (footprint "RF:Taoglas_ChipAntenna_SMD" (layer "F.Cu") (at 78 8) (property "Ref" "ANT1" (at 78 5) (layer "F.SilkS") (effects (font (size 1.0 1.0)))) (property "Value" "Taoglas_Knights_6.5-8GHz" (at 78 11) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (property "Author" "jayis1" (at 78 12) (layer "F.Fab") (effects (font (size 0.4 0.4)))) (pad "FEED" smd rect (at 76 8 0) (size 0.6 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 17 "UWB_RF")) (pad "GND" smd rect (at 80 8 0) (size 0.6 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; J1: USB-C receptacle (left edge) (footprint "Connector_USB:USB_C_Receptacle_Amphenol_12401548E4-2A" (layer "F.Cu") (at 3 27) (property "Ref" "J1" (at 3 21) (layer "F.SilkS") (effects (font (size 1.0 1.0)))) (property "Value" "USB-C_16pin" (at 3 33) (layer "F.Fab") (effects (font (size 0.6 0.6)))) (property "Author" "jayis1" (at 3 34.5) (layer "F.Fab") (effects (font (size 0.4 0.4)))) (pad "A1" smd rect (at 0 24 0) (size 0.3 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) (pad "A4" smd rect (at 0 25.5 0) (size 0.3 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 3 "VBUS")) (pad "A5" smd rect (at 0 27 0) (size 0.3 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 18 "N$0009")) (pad "B9" smd rect (at 0 28.5 0) (size 0.3 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 3 "VBUS")) (pad "B12" smd rect (at 0 30 0) (size 0.3 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; U4: CH224K SOP-8 (top-left near USB-C) (footprint "Package_SO:SOP-8_3.9x4.9mm_P1.27mm" (layer "F.Cu") (at 12 18) (property "Ref" "U4" (at 12 14) (layer "F.SilkS") (effects (font (size 1.0 1.0)))) (property "Value" "CH224K" (at 12 22.5) (layer "F.Fab") (effects (font (size 0.6 0.6)))) (property "Author" "jayis1" (at 12 23.5) (layer "F.Fab") (effects (font (size 0.4 0.4)))) (pad "1" smd rect (at 10.5 15.5 0) (size 0.4 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 3 "VBUS")) (pad "2" smd rect (at 10.5 16.77 0) (size 0.4 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 18 "N$0009")) (pad "3" smd rect (at 10.5 18.04 0) (size 0.4 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 18 "N$0009")) (pad "4" smd rect (at 13.5 18.04 0) (size 0.4 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; SW1-SW3: tactile switches (bottom edge) (footprint "Button_Switch_THT:SW_PUSH_6x6mm" (layer "F.Cu") (at 30 48) (property "Ref" "SW1" (at 30 45) (layer "F.SilkS") (effects (font (size 0.8 0.8)))) (property "Value" "BTN_MODE" (at 30 51.5) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (pad "1" thru_hole circle (at 27 48 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") (net 13 "BTN_MODE")) (pad "2" thru_hole circle (at 33 48 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") (net 2 "GND")) ) (footprint "Button_Switch_THT:SW_PUSH_6x6mm" (layer "F.Cu") (at 42 48) (property "Ref" "SW2" (at 42 45) (layer "F.SilkS") (effects (font (size 0.8 0.8)))) (property "Value" "BTN_UP" (at 42 51.5) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (pad "1" thru_hole circle (at 39 48 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") (net 14 "BTN_UP")) (pad "2" thru_hole circle (at 45 48 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") (net 2 "GND")) ) (footprint "Button_Switch_THT:SW_PUSH_6x6mm" (layer "F.Cu") (at 54 48) (property "Ref" "SW3" (at 54 45) (layer "F.SilkS") (effects (font (size 0.8 0.8)))) (property "Value" "BTN_DOWN" (at 54 51.5) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (pad "1" thru_hole circle (at 51 48 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") (net 15 "BTN_DOWN")) (pad "2" thru_hole circle (at 57 48 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") (net 2 "GND")) ) ;; U6: WS2812B-mini status LED (footprint "LED_SMD:LED_WS2812B-2020" (layer "F.Cu") (at 68 48) (property "Ref" "U6" (at 68 45.5) (layer "F.SilkS") (effects (font (size 0.7 0.7)))) (property "Value" "WS2812B-Mini" (at 68 51) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (property "Author" "jayis1" (at 68 52) (layer "F.Fab") (effects (font (size 0.3 0.3)))) (pad "1" smd rect (at 66.5 47 0) (size 0.5 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 1 "+3V3")) (pad "2" smd rect (at 66.5 49 0) (size 0.5 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 16 "LED_DIN")) (pad "3" smd rect (at 69.5 49 0) (size 0.5 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) (pad "4" smd rect (at 69.5 47 0) (size 0.5 0.5) (layers "F.Cu" "F.Paste" "F.Mask") (net 2 "GND")) ) ;; BT1: JST-PH 2-pin battery connector (footprint "Connector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm" (layer "F.Cu") (at 12 42) (property "Ref" "BT1" (at 12 38) (layer "F.SilkS") (effects (font (size 0.8 0.8)))) (property "Value" "1000mAh_LiPo" (at 12 46) (layer "F.Fab") (effects (font (size 0.5 0.5)))) (property "Author" "jayis1" (at 12 47) (layer "F.Fab") (effects (font (size 0.3 0.3)))) (pad "1" thru_hole rect (at 11 42 0) (size 1.2 1.2) (drill 0.7) (layers "*.Cu" "*.Mask") (net 4 "VBAT")) (pad "2" thru_hole circle (at 13 42 0) (size 1.2 1.2) (drill 0.7) (layers "*.Cu" "*.Mask") (net 2 "GND")) ) ;; =========== Traces (representative subset) =========== ;; UWB SPI bus (U1 -> U2) (segment (start 18.2 22) (end 51.4 28.4) (width 0.2) (layer "F.Cu") (net 5)) (segment (start 18.2 24) (end 51.4 28.8) (width 0.2) (layer "F.Cu") (net 6)) (segment (start 18.2 26) (end 51.4 29.2) (width 0.2) (layer "F.Cu") (net 7)) (segment (start 18.2 28) (end 51.4 29.6) (width 0.2) (layer "F.Cu") (net 8)) ;; UWB IRQ/RST (segment (start 18.2 30) (end 55 34.2) (width 0.2) (layer "F.Cu") (net 9)) (segment (start 18.2 32) (end 55.4 34.2) (width 0.2) (layer "F.Cu") (net 10)) ;; I2C to MAX17048 + OLED (segment (start 18.2 34) (end 25 41) (width 0.2) (layer "F.Cu") (net 11)) (segment (start 18.2 36) (end 24.5 41) (width 0.2) (layer "F.Cu") (net 12)) ;; UWB RF trace (DW3110 -> antenna) — controlled impedance (segment (start 58.6 30) (end 76 8) (width 0.25) (layer "F.Cu") (net 17)) ;; Buttons to ESP32 (segment (start 27 48) (end 18.2 38) (width 0.2) (layer "F.Cu") (net 13)) (segment (start 39 48) (end 18.2 40) (width 0.2) (layer "F.Cu") (net 14)) (segment (start 51 48) (end 18.2 42) (width 0.2) (layer "F.Cu") (net 15)) (segment (start 66.5 49) (end 18.2 44) (width 0.2) (layer "F.Cu") (net 16)) ;; Power rails (segment (start 0 25.5) (end 10.5 15.5) (width 0.4) (layer "F.Cu") (net 3)) (segment (start 11 42) (end 24 43) (width 0.4) (layer "F.Cu") (net 4)) ;; =========== Ground pour (B.Cu) ========================= (zone (net 2) (net_name "GND") (layer "B.Cu") (tstamp 0) (filled_area) (polygon (pts (xy 1 1) (xy 84 1) (xy 84 53) (xy 1 53)) ) ) ;; =========== Vias (representative) ===================== (via (at 25 20) (size 0.6) (drill 0.3) (layers "F.Cu" "B.Cu") (net 1)) (via (at 55 30) (size 0.6) (drill 0.3) (layers "F.Cu" "B.Cu") (net 2)) (via (at 78 8) (size 0.6) (drill 0.3) (layers "F.Cu" "B.Cu") (net 17)) (model "${KISYS3DMOD}/RF_Module.3dshapes/ESP32-S3-WROOM-1.step" (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0))) )