← Back to team overview

kicad-developers team mailing list archive

New eeschema file format

 

Hi,

I was reading through the new sch/lib format documents posted back in
February: https://lists.launchpad.net/kicad-developers/msg23302.html

Since work is underway to facilitate adding this now, I figured it was a
decent time to bring up a few concerns and suggestions I have. Bear in
mind I'm working off a pretty old version of the document here - if it's
been updated and some of this has changed, feel free to point me to a
more recent version; I couldn't find one.

- I think we should work to reduce redundancies in the format. They just
  confuse things and introduce parsing complexities (what happens when
  A implies B, both are written to the file, and they don't agree with
  each other?). Examples:

  - Why both 'polyline' and 'line'? Surely eeschema isn't going to get
    tired of writing 'poly' and decide to start abbreviating it? Can't
    we remove one?

  - Arcs have redundant information, we only need either (radius, start
    angle, end angle, center), or (start point, end point, center). I
    suggest sticking to the former and dropping the start/end points.

- Can we consider adding power ports as a type of label rather than
  component, so we don't have to maintain libraries of every possible
  rail name anymore? I'd happily contribute to the implementation - I
  have an old feature branch where I did exactly that, it worked really
  well :)

- There's a vague comment that fonts aren't supported yet but may be in
  the future. We should specify *now* how upcoming pre-font versions of
  kicad should handle future files that have been saved using fonts, and
  make sure they actually can.

- It looks like the new format may allow an arbitrary number of
  "alternates", not just the one "De Morgan equivalent" that we allow
  now. Is this true? I'd love that.

- Can we ditch 'keywords'? It's not useful anymore, the new component
  search doesn't use it and does a fine job of sifting through tokens in
  descriptions.

- "Are there any other per net hints besides net classes?" - we should
  allow them! They're just hints - allow the format to have arbitrary
  ones that will just be ignored by a pcbnew that doesn't understand
  them.

- Can we add controllable line _color_ as well as style? And also for
  wires? (people making wiring diagrams will like that.)

- BUG: bus_entry is missing an angle specifier - it's possible to
  rotate/flip them.

-- 
Chris


Follow ups