• neo900
  • www
  • Issues
  • #5

Closed
Open
Opened 2016-07-27T12:51Z by Amer @mad_dev

KiCad migration PR

As per @wpwrak post:

Eagle to KiCad:

  • motivation
    • Nikolaus will definitely not be available for layout (gave signs in that sense Feb 2016, confirmed July 2016)
  • technical
    • we considered Altium, but too proprietary and expensive
    • KiCad routing capabilities are superior to Eagle's
    • we now use version control (git), making changes traceable
  • community
    • development process is now much more open (discussions on #neo900)
    • public access to design files ( https://neo900.org/git/?p=ee )
    • design process now uses only Free tools [right ?]
  • internal organization
    • we're no longer blocked/slowed by uncertainty about future GDC role
    • communication flow Neo900 <-> GDC was hampered by incompatible tools and workflow (for a long time)
    • this caused change requests to pile up, and we used white papers as a means of documenting what we couldn't change in the schematics in a timely manner
    • we can now operate in a more schematics-centric mode, using white papers only where something actually needs explaining
    • entire project team can make changes also to layout, if needed (though "dedicated" layouter is preferred)
    • ahycka offered to do it in Altium, seems sympathetic to idea of using KiCad (still to be confirmed - we first need to do our homework, see below)
  • progress
    • completed bulk of the conversion
    • now fixing bugs (some only discovered during conversion)
    • next weeks: incorporating material "parked" in white papers
    • next weeks: define BB-mX interface
    • ... ?
  • downside
    • reduced access to OMAP know-how (though we hope Nikolaus can review our work)

Please solve the reCAPTCHA

We want to be sure it is you, please confirm you are not a robot.

  • hellekin @hellekin Moved from ops#2 (closed) · 2016-07-28T07:52Z

    Moved from ops#2 (closed)

  • hellekin
    hellekin @hellekin · 2016-07-28T07:52Z

    Moved to www since we only keep ops for meetings.

  • hellekin @hellekin Added PR label · 2016-07-28T08:22Z

    Added PR label

  • hellekin
    hellekin @hellekin · 2016-07-28T08:25Z

    There's a rewrite rule pointing at the Eagle files. It should probably point at the new KiCAD files:

    rewrite ^/schematics http://neo900.org/stuff/eaglefiles/proto_v2/2_2014-12-21/GTA04b7.sch.pdf redirect;

  • hellekin @hellekin mentioned in issue ops#4 (closed) · 2016-07-28T14:25Z

    mentioned in issue ops#4 (closed)

  • hellekin @hellekin mentioned in issue ops#5 (closed) · 2016-07-28T15:35Z

    mentioned in issue ops#5 (closed)

  • hellekin
    hellekin @hellekin · 2016-07-29T10:26Z

    More bullets from @wpwrak

    "kicad arcs are defined by center and two angles. however, the direction can be either clockwide or counter-clockwise. this ambiguity is resolved by limiting arcs to < 180 deg." "the converter doesn't know this, and tries to make arcs >= 180 deg, instead of breaking them up into two arcs, each < 180 deg. this is what caused the weirdness in the sensors page." "arcs are so much fun. there are lots of ways to define them, and to resolve ambiguities, and no two pieces of software use exactly the same conventions :)"

    @joerg_rw : " we should contrinute bugfixes to eagle2kicad"

  • hellekin
    hellekin @hellekin · 2016-08-01T10:37Z

    So, I'm writing in the 0021 branch

  • Werner Almesberger
    Werner Almesberger @wpwrak · 2016-08-06T13:47Z

    Posted some comments on the Tue Aug 2 version on #pr. Here they are, slightly cleaned up, so that we don't miss them:

    • I wouldn't say we "build upon" the Openmoko phones. For separating the modem, we can cite as references, besides Neo900: Openmoko Neo 1973 and Neo FreeRunner; Golden Delicious GTA04; and maybe the upcoming Pyra.

    • that's why I'd also not say "plagues all" but "plagues most". Also, there's always an exception you don't know about ;)

    • as far as I remember, you couldn't detach the modem from power in the Neo 1973. The Neo FreeRunner had this functionality, though.

    • Just separating the modem doesn't mean you can monitor all this. You need circuits specifically designed for the purpose.

      The absence of RAM sharing does apply to all these devices, though. (So this part is correct).

    • "won't affect Neo900" still seems a bit too strong, since it can affect the modem.

  • Werner Almesberger
    Werner Almesberger @wpwrak · 2016-08-06T14:27Z

    One item for the Eagle section:

    Another welcome result of the migration is that the design files are now hosted in the project's public git repository: https://neo900.org/git/?p=ee;a=tree

    "Hosted" may sound a bit odd. The word occurred to me because the underlying change is that the design files were before maintained by Nik internally (apparently without version control whatsoever), and the mailed us copies every now and then, which were kept either internally or were somewhat haphazardly placed in various placed on neo900.org. Now we've come out of the stone age, and all this has a well-defined location with proper revision control. So it's not only a transition from stray files to git, but a more profound change of domain and workflow.

    Edited by Werner Almesberger 2016-08-06T14:27Z
  • Werner Almesberger
    Werner Almesberger @wpwrak · 2016-08-07T15:07Z

    Maybe also briefly mention the server migration:

    Last week, we also migrated neo900.org (including the shop at my.neo900.org) to a new server. The old server was running low on disk space, and, when Neo900 has been being mentioned in the news, it has been too weak to keep up with the resulting flood of Web site visits. (I.e., we have been "slashdotted" a number of times.)

    The migration went fairly smoothly and everything should be up and running again. If you spot any problems, please report them to contact@neo900.org


    For "slashdotted", maybe pick one of these links: https://en.wikipedia.org/wiki/Slashdot_effect http://www.urbandictionary.com/define.php?term=slashdotted

  • Werner Almesberger
    Werner Almesberger @wpwrak · 2016-08-07T18:38Z

    Regarding "won't affect Neo900" being too strong, it seems that we can safely say that, with the exception of the inside of the modem, we don't have ASN.1 anywhere where the implementation couldn't be fixed if broken. (ASN.1 is used in many places, e.g., also in GnuTLS, e.g., for X.509 certificates, which then leads to many, many dependencies [1].)

    [1] For a pessimistic estimate, run this on a debianite (this may take a while): apt-rdepends --reverse libtasn1-6 | grep 'Reverse Depends' | grep -v ' lib' | sort | uniq

  • hellekin
    hellekin @hellekin · 2016-08-07T22:46Z

    almost there... Split ASN.1 vulnerability to #9 (closed) .

    Remaining: more details about the whitepapers.

  • hellekin
    hellekin @hellekin · 2016-08-08T09:04Z

    Notes from the backlog:

    @wpwrak

    "Full package for schematic and board design, etc. Design rule checking. User-defined symbols and footprints. Gerber/ drill file creation. Sophisticated graphic interface. Active user community"

    does that come from wikipedia?

    and the comparison chart is a bit obsolete ;) kicad now has some simulation

    so don't trust wikipedia too much :]

    @joerg_rw makes some remarks suggesting not all is positive in the migration to KiCad, which is a great point for a balanced review.

    The dialogue makes for a good review of things one wants to do and can't, and how to go around them or actually do them "the KiCad way". Some review needed to ensure the "KiCad tips" section is useful.

    the "python" tag in "scripting support" col is pretty much incorrect actually kicad has not even a forward/back-annotation between schematics and layout you could script network highlighting and forward/back annotations, IF kicad knew any scripts in eeschema, and eeschema would know highlighting of multiple objects pcbnew layout editr has a "Scripting console" that talks python, but it seems no docs for that thing are available so you only can guess how to use it, and you can't load and execute arbitrary python scripts in a simple and easy way

    a click on a component in schematics and then say "show me this thing in layout" is basically completely impossible, you need to do it manually the other way around might work with xdotool and lots of hackery

    Actually you need to open bothpcbnewandeeschemaviews so they can talk to each other. When the zone under focus is too crowded, the result can lack precision, so better use the zoom feature to adjust the view to your desired component.

    it seems it has no network highlighting either.pcbnewhighlights traces, buteeschemaonly highligts wire (segments) but no networks and more often than not the both ends of a component are indistinguishable pcbnew will also highlight nets (without involving eeschema), but that happens typically when you add a new trace to

    UI quirk:

    dang, when the component I select in pcbnew is visible on the eeschema window, then it does not center but only place that haircross there, which jumps back to mouse pointer as soon as mouse moves which means you must NOT move mouse at all and hope you find the flimsy haircross before it nevertheless jumped back to cursor

    you definitely want two screens. with one it's just agony if you can add a 3rd screen, even better: #1 (closed) schematics, #2 (closed) pcbnew, #3 data sheet or communication meh, the status line gives it away, not that this helps a lot

    White papers

    http://talk.maemo.org/showthread.php?t=93498

  • hellekin @hellekin mentioned in issue ops#6 (closed) · 2016-08-08T13:16Z

    mentioned in issue ops#6 (closed)

  • Werner Almesberger
    Werner Almesberger @wpwrak · 2016-08-08T14:41Z

    does that come from wikipedia?

    Yes. Seems that the KiCad marketing department was busy :)

    Suggesting the following minor edits:

    • s/and comes/and come/
    • s/finishing touch/finishing touches/
    • s/has the same flaw as Eagle/shares a major flaw with Eagle/
    • s/can now operate/can operate/ # two "now" in a row are poor style
    • s/We found out that // # we knew that for a good while :)
    • "improvement over that." maybe s/that/the corresponding Eagle experience/ ?
  • hellekin
    hellekin @hellekin · 2016-08-09T17:47Z

    Awaiting @joerg_rw 's ack or nak. (Please use the OK tag to confirm what's in branch 0021 is ready for publication, or comment with required changes.)

  • hellekin @hellekin Reassigned to @joerg_rw · 2016-08-09T17:47Z

    Reassigned to @joerg_rw

  • hellekin @hellekin mentioned in issue ops#7 (closed) · 2016-08-09T17:49Z

    mentioned in issue ops#7 (closed)

  • Joerg Reisenweber
    Joerg Reisenweber @joerg_rw · 2016-08-09T18:40Z

    WHICH OK TAG? http://wstaw.org/m/2016/08/09/plasma-desktopnQ2277.png

  • Joerg Reisenweber
    Joerg Reisenweber @joerg_rw · 2016-08-09T18:42Z

    also which text is this all about?

  • hellekin
    hellekin @hellekin · 2016-08-09T19:40Z

    https://git.devuan.org/neo900/www/blob/0021/content/0021-migrating-away-from-eagle-to-kicad.html

  • Joerg Reisenweber
    Joerg Reisenweber @joerg_rw · 2016-08-09T21:49Z

    ok, I finally figured what's meant by "use the OK tag" - sorry I didn't get tags are labels and I need to edit them

  • Joerg Reisenweber @joerg_rw Added OK label · 2016-08-09T21:49Z

    Added OK label

  • Joerg Reisenweber
    Joerg Reisenweber @joerg_rw · 2016-08-09T22:00Z

    for future similar text production: please add a link like

    hellekin @hellekin commented about 2 hours ago https://git.devuan.org/neo900/www/blob/0021/content/0021-migrating-away-from-eagle-to-kicad.html

    on top of the issue so we can find and use it (if it's not possible to keep the text inside the issue).

    And please use markup or plain ascii for the draft, any HTML meta can and should get added only after the content got finalized. Many thanks

    Edited by Joerg Reisenweber 2016-08-09T22:02Z
  • hellekin @hellekin Removed OK label · 2016-08-09T22:13Z

    Removed OK label

  • hellekin
    hellekin @hellekin · 2016-08-10T05:07Z

    hellekin @hellekin about 7 hours ago Removed OK label

    ??? Hmmm, no...

  • hellekin @hellekin Added OK label · 2016-08-10T05:08Z

    Added OK label

  • hellekin @hellekin Status changed to closed · 2016-08-10T05:08Z

    Status changed to closed

  • hellekin @hellekin Removed PR label · 2016-09-23T10:09Z

    Removed PR label