Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
lepton-sch2pcb(1)		     lepton-sch2pcb(1)

       lepton-sch2pcb -	Update PCB layouts from	Lepton EDA schematics

       lepton-sch2pcb [OPTION ...] {PROJECT | FILE ...}

       lepton-sch2pcb  is a frontend to	lepton-netlist(1) which	aids in	creat-
       ing and updating	pcb(1) printed circuit board layouts based on a	set of
       electronic schematics created with lepton-schematic(1).

       Instead of specifying all options and input schematic FILEs on the com-
       mand line, lepton-sch2pcb can use a PROJECT file	instead.

       lepton-sch2pcb first runs lepton-netlist(1) with	the `PCB' backend  (or
       backend	specified by --backend-net) to create a	`<name>.net' file con-
       taining a pcb(1)	formatted netlist for the design.

       The second step is to run lepton-netlist(1) again with  the  `gsch2pcb'
       backend	(or backend specified by --backend-pcb)	to find	any M4(1) ele-
       ments required by the schematics.  Any missing elements	are  found  by
       searching  a  set of file element directories.  If no `<name>.pcb' file
       exists for the design yet, it is	created	with  the  required  elements;
       otherwise, any new elements are output to a `<name>.new.pcb' file.

       If  a `<name>.pcb' file exists, it is searched for elements with	a non-
       empty element name with no matching schematic symbol.   These  elements
       are   removed   from   the  `<name>.pcb'	 file,	with  a	 backup	 in  a
       `<name>.pcb.bak'	file.

       Finally,	lepton-netlist(1) is run a third time with the `pcbpins' back-
       end  (or	 backend  specified by --backend-cmd) to create	a `<name>.cmd'
       file.  This can be loaded into pcb(1) to	rename all pin	names  in  the
       PCB layout to match the schematic.

       -o, --output-name=BASENAME
	       Use output filenames `', `BASENAME.pcb', and	`BASE-'.  By default, the basename	of the first schematic
	       file in the list	of input files is used.

       -d, --elements-dir=DIRECTORY
	       Add DIRECTORY to	the list of directories	to search for PCB file
	       elements.  By default, the following directories	 are  searched
	       if  they	 exist:	 `./packages',	`/usr/local/share/pcb/newlib',
	       `/usr/share/pcb/newlib',		     `/usr/local/lib/pcb_lib',
	       `/usr/lib/pcb_lib', `/usr/local/pcb_lib'.

       -f, --use-files
	       Force  use of file elements in preference to elements generated
	       with M4(1).

       -s, --skip-m4
	       Disable element generation using	M4(1) entirely.

       --m4-file FILE
	       Use the M4(1) file FILE in addition to  the  default  M4	 files
	       `./' and `~/.pcb/'.

       --m4-pcbdir DIRECTORY
	       Set DIRECTORY as	the directory where lepton-sch2pcb should look
	       for M4(1) files installed by pcb(1).

       -r, --remove-unfound
	       Don't include references	to unfound elements in	the  generated
	       `.pcb'  files.	Use  if	you want pcb(1)	to be able to load the
	       (incomplete) `.pcb' file.  This is enabled by default.

       -k, --keep-unfound
	       Keep include references to unfound elements  in	the  generated
	       `.pcb'  files.	Use if you want	to hand	edit or	otherwise pre-
	       process the generated `.pcb' file before	running	pcb(1).

       -p, --preserve
	       Preserve	elements in PCB	files  which  are  not	found  in  the
	       schematics.    Since   elements	with  an  empty	 element  name
	       (schematic "refdes") are	never deleted, this option  is	rarely

       --backend-cmd BACKEND
	       Use  BACKEND  to	 generate `<name>.cmd' file instead of the de-
	       fault one (`pcbpins').

       --backend-net BACKEND
	       Use BACKEND to generate `<name>.net' file instead  of  the  de-
	       fault one (`PCB').

       --backend-pcb BACKEND
	       Use  BACKEND  to	 generate `<name>.pcb' file instead of the de-
	       fault one (`gsch2pcb').

       --gnetlist BACKEND
	       In addition to the default backends, run	lepton-netlist(1) with
	       `-g BACKEND', with output to `<name>.BACKEND'.

       --gnetlist-arg ARG
	       Pass ARG	as an additional argument to lepton-netlist(1).

       --empty-footprint NAME
	       If NAME is not `none', lepton-sch2pcb will not add elements for
	       components with that name to the	PCB file.  Note	 that  if  the
	       omitted components have net connections,	they will still	appear
	       in the netlist and pcb(1) will warn that	they are missing.

	       If a schematic component's `footprint' attribute	is  not	 equal
	       to  the	`Description' of the corresponding PCB element,	update
	       the `Description' instead of replacing the element.

       -q, --quiet
	       Don't output information	on steps to take after running lepton-

       -v, --verbose
	       Output  extra debugging information.  This option can be	speci-
	       fied twice (`-v -v') to obtain additional  debugging  for  file

       -h, --help
	       Print a help message.

       -V, --version
	       Print lepton-sch2pcb version information.

       A lepton-sch2pcb	project	file is	a file (not ending in `.sch') contain-
       ing a list of schematics	to process and some  options.	Any  long-form
       command	line  option  can  appear in the project file with the leading
       `--' removed, with the exception	of `--gnetlist-arg', `--fix-elements',
       `--verbose',  and  `--version'.	 Schematics should be listed on	a line
       beginning with `schematics'.

       An example project file might look like:

	    schematics partA.sch partB.sch
	    output-name	design

	       specifies the netlister(1) program  to  run.   The  default  is

       Bill Wilson

       Copyright (C) 2012-2017 gEDA Contributors.
       Copyright (C) 2017-2021 Lepton Developers.
       License GPLv2+: GNU GPL version 2 or later. Please see the `COPYING'
       file included with this program for full	details.

       This is free software: you are free to change and redistribute it.
       There is	NO WARRANTY, to	the extent permitted by	law.

       lepton-schematic(1), lepton-netlist(1), pcb(1)

Lepton EDA			 July 31, 2021		     lepton-sch2pcb(1)


Want to link to this manual page? Use this URL:

home | help