1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <link rel=
"stylesheet" media=
"screen" type=
"text/css" href=
"./style.css" />
6 <link rel=
"stylesheet" media=
"screen" type=
"text/css" href=
"./design.css" />
7 <link rel=
"stylesheet" media=
"print" type=
"text/css" href=
"./print.css" />
9 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8" />
14 <em>Translations of this page are also available in the following languages:
</em> <a href=
"pcb-roadmap.ru.html" class=
"wikilink1" title=
"pcb-roadmap.ru.html">Русский
</a>
17 <h1 class=
"sectionedit1" id=
"pcb_roadmap">PCB Roadmap
</h1>
21 This is a guide to the future direction of the PCB layout editor.
24 <li class=
"level1"><div class=
"li"> <a href=
"geda-design_flow_and_hierarchy_roadmap.html" class=
"wikilink1" title=
"geda-design_flow_and_hierarchy_roadmap.html"> gEDA roadmap
</a> has some PCB items.
</div>
26 <li class=
"level1"><div class=
"li"> <a href=
"pcb-projects.html" class=
"wikilink1" title=
"pcb-projects.html"> PCB Projects
</a> lists some wish-list items.
</div>
31 <!-- EDIT1 SECTION "PCB Roadmap" [109-352] -->
32 <h2 class=
"sectionedit2" id=
"general_guidelines_for_releases">General Guidelines for Releases
</h2>
36 In general, there are three types of changes that go into PCB - bug
37 fixes, new features, and incompatible changes.
40 <li class=
"level1"><div class=
"li"> A
<em>bug fix
</em> is when PCB doesn
't do what it
's supposed to do - this includes documentation bugs as well as code problems.
</div>
44 <li class=
"level1"><div class=
"li"> A
<em>new feature
</em> is something that adds functionality to PCB but doesn
't change any existing functionality.
</div>
48 <li class=
"level1"><div class=
"li"> An
<em>incompatible change
</em> is anything that causes (intentional) compatibility issues with older versions of PCB, and usually means a large design change.
</div>
53 Note that a new feature that
54 adds a backwards-incompatible change to the file format
<em>when it
's
55 used
</em> is not in this category.
59 Bugs, patches, and feature requests should be added to the
60 <a href=
"https://bugs.launchpad.net/pcb" class=
"urlextern" title=
"https://bugs.launchpad.net/pcb" rel=
"nofollow">PCB Launchpad bugs
65 The default status
<strong>undecided
</strong>, bug reports with that priority will be considered “unreviewed”.
69 <!-- EDIT2 SECTION "General Guidelines for Releases" [353-1268] -->
70 <h2 class=
"sectionedit3" id=
"current_plans">Current plans
</h2>
74 The current plan is as follows:
77 <li class=
"level1"><div class=
"li"> Releases every three … four months or so, until we clear the backlog.
</div>
79 <li class=
"level1"><div class=
"li"> Start on a PCB
5.x release that folds in some large design changes.
</div>
84 <!-- EDIT3 SECTION "Current plans" [1269-1477] -->
85 <h2 class=
"sectionedit4" id=
"pcb_release_schedule">pcb release schedule
</h2>
89 The pcb release schedule can be found
<a href=
"https://launchpad.net/pcb/+milestones" class=
"urlextern" title=
"https://launchpad.net/pcb/+milestones" rel=
"nofollow"> here
</a>.
93 The remainder of this page will list the various wishes that are
94 planned (or at least hoped for) for upcoming and future releases.
98 <!-- EDIT4 SECTION "pcb release schedule" [1478-1735] -->
99 <h2 class=
"sectionedit5" id=
"wish_list">Wish List
</h2>
103 This section lists possible projects for future releases, which either
104 haven
't been agreed on, or haven
't been scheduled. If you
'd like to
105 work on one of these, go ahead
<img src=
"images/smileys/icon_smile.gif" align=
"middle" alt=
":-)" />
108 <li class=
"level1"><div class=
"li"> <a href=
"geda-pcb_layers.html" class=
"wikilink1" title=
"geda-pcb_layers.html"> New Layers
</a> proposal is here.
</div>
110 <li class=
"level1"><div class=
"li"> Multiple fonts in a design (
<a href=
"geda-pcb_fonts.html" class=
"wikilink1" title=
"geda-pcb_fonts.html"> description of feature branch
</a>)
</div>
112 <li class=
"level1"><div class=
"li"> Other
<abbr title=
"Graphical User Interface">GUI
</abbr> cleanups. Gtk upgraded to “best practices”. Importer config.
</div>
114 <li class=
"level1"><div class=
"li"> import/wizard plugins (as well as exports)
</div>
116 <li class=
"level1 node"><div class=
"li"> <a href=
"pcb-drc.html" class=
"wikilink1" title=
"pcb-drc.html"> Design Rule Checker
</a></div>
118 <li class=
"level4"><div class=
"li"> status report active on drawing space when “DRC Active” toggled
'on
' in Connects menu.
</div>
120 <li class=
"level4"><div class=
"li"> DRC profile files (for different mfg processes).
</div>
122 <li class=
"level4"><div class=
"li"> General code clean up
</div>
124 <li class=
"level4"><div class=
"li"> Modularization
</div>
128 <li class=
"level1 node"><div class=
"li"> Variable-angle arcs.
</div>
130 <li class=
"level4"><div class=
"li"> file footprints support this, it
's a graphics issue.
</div>
134 <li class=
"level1"><div class=
"li"> Better support for free-rotated components: assert that pads at funky angles are rendered correctly, fix autorouter for components at weird angles (the latest git version has a tendency to either ignore the route command or to segfault, depending on the specifics), add rotation to the
<kbd>Ctrl
</kbd>+
<kbd>R
</kbd> report, etcetera.
</div>
136 <li class=
"level1 node"><div class=
"li"> Ability to copy a footprint
's name from the library dialogue (so it can be pasted into gschem
's attribute list).
</div>
138 <li class=
"level3"><div class=
"li"> it should be a feature of gschem to open .fp libraries.
</div>
142 <li class=
"level1"><div class=
"li"> Ability to edit netlist in-situ (possibly by drawing on the rat lines layer) - e.g, when you want to add a heatsink soldered to ground, it will always show up as shorted until the netlist is edited to incorporate it.
</div>
144 <li class=
"level1"><div class=
"li"> Trace impedance calculator, with automatic adjustment capability (fill in thickness, stray capacitance and desired impedance, and the width is adjusted to satisfy the conditions).
</div>
146 <li class=
"level1"><div class=
"li"> Integrated footprint lookup and fetch from gedasymbols.org.
</div>
148 <li class=
"level1"><div class=
"li"> Hierarchical pcb model - subcells, footprints-as-pcb, etc.
</div>
150 <li class=
"level1 node"><div class=
"li"> A shape I
've often wanted on a pad is circle with the sides cut off. This is slightly different than an oval. Something like Inkscape
's boolean operations would be excellent.
</div>
152 <li class=
"level2"><div class=
"li"> PCB file footprints support
'obround
' or pill shaped pads.
</div>
156 <li class=
"level1"><div class=
"li"> How about text at not-
90 degree angles? Or support for rotated square pads (I know, the file format doesn
't support those two.)
</div>
158 <li class=
"level1"><div class=
"li"> Editing on the grid has got to go! Counting grid points is the worst possible way to enter positional information into a computer.
</div>
160 <li class=
"level1"><div class=
"li"> Make every field in object reports editable.
</div>
162 <li class=
"level1"><div class=
"li"> Allow direct entry of offsets and absolute positions when editing.
</div>
164 <li class=
"level1"><div class=
"li"> Add “offset” and “trim” feature à la
2D CAD programs.
</div>
166 <li class=
"level1"><div class=
"li"> Add “point to tangent” and “tangent to tangent” line drawing feature à la
2D CAD programs.
</div>
168 <li class=
"level1 node"><div class=
"li"> When silk layer is off, show refdeses in very thin, small type for all footprints, say over pin
1, or the diamond mark.
</div>
170 <li class=
"level3"><div class=
"li"> similar to
'lock names
', but done in order to clear up the board real-estate.
</div>
172 <li class=
"level3"><div class=
"li"> this would be
'drafting mode
' as opposed to
'output mode
' where silk would be
1:
1.
</div>
176 <li class=
"level1"><div class=
"li"> Selection improvements: make it possible to select the endpoint of a specific trace, if two endpoints are coincident, you can
't know which will be selected.
</div>
178 <li class=
"level1"><div class=
"li"> Trace centerline dissappears when moving trace endpoint in thin-draw mode. this is undesirable behaviour.
</div>
180 <li class=
"level1 node"><div class=
"li"> Filled circles
</div>
182 <li class=
"level3"><div class=
"li"> Currently, to get a filled circle you create a zero-length trace of the right width.
</div>
184 <li class=
"level3"><div class=
"li"> Are there actually electronics components that require filled circle copper?
</div>
188 <li class=
"level1"><div class=
"li"> Unification of shortcuts in gschem and PCB, or at least an easy option for PCB to mimic gschem
's shortcuts.
</div>
190 <li class=
"level1"><div class=
"li"> CAM engine? (i.e. ability to say “draw outline on top soldermask” via script/config)
</div>
192 <li class=
"level1"><div class=
"li"> Automatic least version required file saving. (goal: accomodate new features gracefully)
</div>
194 <li class=
"level1"><div class=
"li"> Put various commands which are only accessible via a :command(foo) into the top menu. Newbies want to see what actions are in the menus since that way they know what PCB can do.
</div>
196 <li class=
"level1"><div class=
"li"> Make the difference between editing footprints and PCBs much more obvious. If you
're in footprint editing mode, then perhaps make the background color change. (Architectural)
</div>
201 <!-- EDIT5 SECTION "Wish List" [1736-] --></body>