Skip to content
Snippets Groups Projects
kicad_python.py 1.36 KiB
Newer Older
#!/usr/bin/env python3

"""
python 3.6.8
"""
import pcbnew
import skidl
import csv

class schematic():
    def __init__(self,lib_path):
        skidl.lib_search_paths['kicad'].append(lib_path)
        ## load symbol of all parts
        self.esp8826=skidl.Part('ESP8266','NodeMCU_1.0_',footprint='ESP8266.pretty:ESP12F-Devkit-V3')
        self.mpu9250=skidl.Part('ESP8266','MPU-9250',footprint='ESP8266.pretty:mpu-9250')
        self.resistor1=skidl.Part('ESP8266','1000',value='1K',footprint='Resistor_SMD.pretty:R_0402_1005Metric',ref='R1')
        self.resistor2=skidl.Part('ESP8266','1000',value='1K',footprint='Resistor_SMD.pretty:R_0402_1005Metric',ref='R2')
    
        self.connect_pins()

        skidl.generate_netlist()
    def connect_pins(self):
        
        v33=skidl.Net('3v3')
        v5=skidl.Net('VIN')
        gnd=skidl.Net('GND')

        self.resistor1[1]+=v33
        self.resistor2[1]+=v33
        
        v5+=self.esp8826['VIN']
        v33+=self.esp8826['3.3v']
        gnd+=self.esp8826['GND']
        self.esp8826['D5']+=self.resistor1[2]
        self.esp8826['D6']+=self.resistor2[2]

        self.mpu9250['SDA']+=self.resistor1[2]
        self.mpu9250['SCL']+=self.resistor2[2]
        self.mpu9250['GND']+=gnd
        self.mpu9250['VCC']+=v33

        skidl.ERC()



lib_path='/home/jingyan/kicad/libraries/kicad-ESP8266'
net_generator=schematic(lib_path)