Send commitlog mailing list submissions to
        commitlog@lists.openmoko.org

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.openmoko.org/mailman/listinfo/commitlog
or, via email, send a message with subject or body 'help' to
        commitlog-requ...@lists.openmoko.org

You can reach the person managing the list at
        commitlog-ow...@lists.openmoko.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of commitlog digest..."
Today's Topics:

   1. r5747 - developers/werner/gta02-core/ge864
      (wer...@docs.openmoko.org)
   2. r5748 - in trunk/eda/fped: . examples (wer...@docs.openmoko.org)
   3. r5749 - in developers/werner/cncmap: . tpath
      (wer...@docs.openmoko.org)
--- Begin Message ---
Author: werner
Date: 2009-12-02 15:55:11 +0100 (Wed, 02 Dec 2009)
New Revision: 5747

Modified:
   developers/werner/gta02-core/ge864/ge864.brd
   developers/werner/gta02-core/ge864/ge864.pro
Log:
Yet more small improvements.

- ge864.brd: avoid trace under dual transistor
- ge864.brd: added strips to serve as landing zones for off-board connections



Modified: developers/werner/gta02-core/ge864/ge864.brd
===================================================================
--- developers/werner/gta02-core/ge864/ge864.brd        2009-12-02 14:39:20 UTC 
(rev 5746)
+++ developers/werner/gta02-core/ge864/ge864.brd        2009-12-02 14:55:11 UTC 
(rev 5747)
@@ -1,4 +1,4 @@
-PCBNEW-BOARD Version 1 date Wed Dec  2 11:35:09 2009
+PCBNEW-BOARD Version 1 date Wed Dec  2 11:52:00 2009
 
 # Created by Pcbnew(20090813 SVN-R1923)
 
@@ -9,7 +9,7 @@
 NoConn 0
 Di 30424 31674 69826 51326
 Ndraw 36
-Ntrack 223
+Ntrack 231
 Nzone 0
 LayerThickness 630
 Nmodule 38
@@ -34,7 +34,7 @@
 Layers 2
 Layer[0] Copper signal
 Layer[15] Component signal
-TrackWidth 100
+TrackWidth 800
 TrackWidthHistory 100
 TrackWidthHistory 170
 TrackWidthHistory 300
@@ -2363,6 +2363,26 @@
 De 15 1 0 Normal
 $EndTEXTPCB
 $TRACK
+Po 0 31500 42250 31500 45750 800 -1
+De 15 0 0 0 0
+Po 0 31500 37250 31500 40750 800 -1
+De 15 0 0 0 0
+Po 0 68750 46000 65000 46000 800 -1
+De 15 0 0 0 0
+Po 0 68750 44750 65000 44750 800 -1
+De 15 0 0 0 0
+Po 0 65000 43500 68750 43500 800 -1
+De 15 0 0 0 0
+Po 0 68750 42250 65000 42250 800 -1
+De 15 0 0 0 0
+Po 0 65000 41000 68750 41000 800 -1
+De 15 0 0 0 0
+Po 0 68750 39750 65000 39750 800 -1
+De 15 0 0 0 0
+Po 0 65000 38500 68750 38500 800 -1
+De 15 0 0 0 0
+Po 0 68750 37250 65000 37250 800 -1
+De 15 0 0 0 0
 Po 0 61808 46501 53001 46501 100 -1
 De 15 0 1 0 800
 Po 0 45404 44000 44968 44436 100 -1
@@ -2417,6 +2437,10 @@
 De 15 0 4 0 400
 Po 0 57251 47499 56251 48499 100 -1
 De 15 0 4 0 0
+Po 0 50604 36500 57500 36500 100 -1
+De 15 0 5 0 800
+Po 0 57500 36500 58250 35750 100 -1
+De 15 0 5 0 0
 Po 0 60000 35044 59706 35044 100 -1
 De 15 0 5 0 800
 Po 0 59706 35044 58625 36125 100 -1
@@ -2431,8 +2455,10 @@
 De 15 0 5 0 0
 Po 0 57000 34500 47750 34500 800 -1
 De 15 0 5 0 0
-Po 0 58625 36125 57000 34500 800 -1
+Po 0 58625 36125 58250 35750 800 -1
 De 15 0 5 0 0
+Po 0 58250 35750 57000 34500 800 -1
+De 15 0 5 0 0
 Po 0 52000 42750 52000 43750 100 -1
 De 15 0 5 0 0
 Po 0 52750 47000 52500 47250 100 -1
@@ -2501,16 +2527,6 @@
 De 15 0 5 0 400
 Po 0 52000 41750 52000 42750 100 -1
 De 15 0 5 0 0
-Po 0 47921 35579 49829 35579 100 -1
-De 15 0 5 0 800
-Po 0 50500 36500 50604 36500 100 -1
-De 15 0 5 0 400
-Po 0 50250 36250 50500 36500 100 -1
-De 15 0 5 0 0
-Po 0 50250 36000 50250 36250 100 -1
-De 15 0 5 0 0
-Po 0 49829 35579 50250 36000 100 -1
-De 15 0 5 0 0
 Po 0 43250 46750 43250 50250 300 -1
 De 15 0 5 0 0
 Po 0 43000 45421 43000 46500 300 -1

Modified: developers/werner/gta02-core/ge864/ge864.pro
===================================================================
--- developers/werner/gta02-core/ge864/ge864.pro        2009-12-02 14:39:20 UTC 
(rev 5746)
+++ developers/werner/gta02-core/ge864/ge864.pro        2009-12-02 14:55:11 UTC 
(rev 5747)
@@ -1,67 +1,6 @@
-update=Fri 19 Jun 2009 08:59:50 WEST
+update=Wed Dec  2 11:40:20 2009
 version=1
-last_client=eeschema
-[pcbnew]
-version=1
-PadDrlX=320
-PadDimH=600
-PadDimV=600
-PadForm=1
-PadMask=14745599
-ViaDiam=450
-ViaDril=250
-Isol=60
-Countlayer=2
-Lpiste=170
-RouteTo=15
-RouteBo=0
-TypeVia=3
-Segm45=1
-Racc45=1
-Unite=0
-SegFill=1
-SegAffG=0
-NewAffG=1
-PadFill=1
-PadAffG=1
-PadSNum=1
-ModAffC=0
-ModAffT=0
-PcbAffT=0
-SgPcb45=1
-TxtPcbV=800
-TxtPcbH=600
-TxtModV=600
-TxtModH=600
-TxtModW=120
-HPGLnum=1
-HPGdiam=15
-HPGLSpd=20
-HPGLrec=2
-HPGLorg=0
-GERBmin=15
-VEgarde=100
-DrawLar=150
-EdgeLar=150
-TxtLar=120
-MSegLar=150
-ForPlot=1
-WpenSer=10
-UserGrX=0,01
-UserGrY=0,01
-UserGrU=1
-DivGrPc=1
-TimeOut=600
-MaxLnkS=3
-ShowRat=0
-ShowMRa=1
-[pcbnew/libraries]
-LibDir=
-LibName1=../../../../trunk/gta02-core/modules/gta02-core
-LibName2=./ge864
-LibName3=./sim
-LibName4=./pin
-LibName5=./sot353
+last_client=pcbnew
 [general]
 version=1
 [cvpcb]
@@ -111,3 +50,46 @@
 LibName4=../../../../trunk/gta02-core/components/gta02-core.lib
 LibName5=./ge864.lib
 LibName6=../components/dual_trans.lib
+[pcbnew]
+version=1
+PadDrlX=320
+PadDimH=600
+PadDimV=600
+ViaDiam=450
+ViaDril=250
+ViaAltD=250
+MViaDia=100
+MViaDrl=50
+Isol=60
+LayerThickness=630
+Countlayer=2
+Lpiste=100
+RouteTo=15
+RouteBo=0
+TypeVia=3
+Segm45=1
+Racc45=1
+SgPcb45=1
+TxtPcbV=800
+TxtPcbH=600
+TxtModV=600
+TxtModH=600
+TxtModW=120
+HPGLnum=1
+HPGdiam=15
+HPGLSpd=20
+HPGLrec=2
+VEgarde=100
+DrawLar=150
+EdgeLar=150
+TxtLar=120
+MSegLar=150
+WpenSer=10
+[pcbnew/libraries]
+LibDir=
+LibName1=../../../../trunk/gta02-core/modules/gta02-core
+LibName2=./ge864
+LibName3=./sim
+LibName4=./pin
+LibName5=./sot353
+LibName6=connect




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2009-12-02 16:36:00 +0100 (Wed, 02 Dec 2009)
New Revision: 5748

Added:
   trunk/eda/fped/examples/
   trunk/eda/fped/examples/fbga.fpd
   trunk/eda/fped/examples/meas.fpd
   trunk/eda/fped/examples/qfn.fpd
   trunk/eda/fped/examples/quad.fpd
   trunk/eda/fped/examples/sc89.fpd
   trunk/eda/fped/examples/tab.fpd
Removed:
   trunk/eda/fped/fbga.fpd
   trunk/eda/fped/meas.fpd
   trunk/eda/fped/qfn.fpd
   trunk/eda/fped/quad.fpd
   trunk/eda/fped/sc89.fpd
   trunk/eda/fped/tab.fpd
Modified:
   trunk/eda/fped/README
Log:
A bit of cleanup, as suggested by Chitlesh Goorah.

- moved all examples to examples/
- README: updated and corrected example invocation



Modified: trunk/eda/fped/README
===================================================================
--- trunk/eda/fped/README       2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/README       2009-12-02 15:36:00 UTC (rev 5748)
@@ -39,7 +39,7 @@
 
 Run an example:
 
-  ./fped qfp.fpd
+  ./fped examples/qfn.fpd
 
 
 Motivation

Copied: trunk/eda/fped/examples/fbga.fpd (from rev 5697, 
trunk/eda/fped/fbga.fpd)
===================================================================
--- trunk/eda/fped/examples/fbga.fpd                            (rev 0)
+++ trunk/eda/fped/examples/fbga.fpd    2009-12-02 15:36:00 UTC (rev 5748)
@@ -0,0 +1,56 @@
+/* MACHINE-GENERATED ! */
+
+frame pad {
+       set Px = 0.5mm
+
+       set Py = 0.5mm
+
+       set cname = col+1
+
+       set e = 1mm
+
+       __0: vec @(col*e-Px/2, row*-e-Py/2)
+       __1: vec .(0mm, Py)
+       __2: vec __0(Px, 0mm)
+       rpad "$rname$cname" __1 .
+}
+
+frame inner {
+       loop col = 2, 3
+
+       loop enable = 1, inner
+
+       frame pad @
+}
+
+frame last {
+       loop col = 4, 5
+
+       frame pad @
+}
+
+frame first {
+       loop col = 0, 1
+
+       frame pad @
+}
+
+package "Fake_BGA"
+table
+    { row, rname, inner }
+    { 0, "A", 1 }
+    { 1, "B", 1 }
+    { 2, "C", 0 }
+    { 3, "D", 0 }
+    { 4, "E", 1 }
+    { 5, "F", 1 }
+
+frame last @
+frame first @
+frame inner @
+measy pad.__0 -> pad.__1 0.2mm
+measy pad.__0 -> pad.__0 0.5mm
+measx pad.__0 -> pad.__2 -0.3mm
+measx pad.__0 -> pad.__0 -0.6mm
+measy pad.__0 >> pad.__1 0.8mm
+measx pad.__0 >> pad.__2 -0.9mm

Copied: trunk/eda/fped/examples/meas.fpd (from rev 5697, 
trunk/eda/fped/meas.fpd)
===================================================================
--- trunk/eda/fped/examples/meas.fpd                            (rev 0)
+++ trunk/eda/fped/examples/meas.fpd    2009-12-02 15:36:00 UTC (rev 5748)
@@ -0,0 +1,24 @@
+/*
+ * new-style measurements demo
+ */
+
+part "measurements"
+loop x = -2, 2
+A: vec @(0mm, 0mm)
+B: vec @(x*2mm, 2mm)
+C: vec @(0mm, 4mm)
+
+/*
+ * If we measure (x, y), y trumps x
+ */
+meas "A -> B = " A -> B 0.2mm
+meas "A <- B = " A <- B 0.5mm
+
+meas "A >> B = " A >> B 1.5mm
+
+measx "x(A -> B) = " A -> B -0.5mm
+measx "x(A >> B) = " A >> B -1mm
+measy "y(A -> B) = " A -> B -2mm
+measy "y(A >> B) = " A >> B -4.5mm
+
+meas "B -> C = " B -> C 0.5mm

Copied: trunk/eda/fped/examples/qfn.fpd (from rev 5697, trunk/eda/fped/qfn.fpd)
===================================================================
--- trunk/eda/fped/examples/qfn.fpd                             (rev 0)
+++ trunk/eda/fped/examples/qfn.fpd     2009-12-02 15:36:00 UTC (rev 5748)
@@ -0,0 +1,73 @@
+/*
+ * Example of a QFN package (and general construction site to experiment with
+ * fped features during development)
+ *
+ * Everything you see here is likely to change sooner or later.
+ *
+ * http://www.nxp.com/acrobat/packages/footprint/SOT616-1_fp_reflow.pdf
+ */
+
+frame pad_up {
+       c: vec @(-D/2, 0mm)
+       o: vec c(D, C)
+       set pad = n+1
+       pad "$pad" c .
+}
+
+frame pads {
+       loop n = 0, N/4-1
+
+       vec @(P*(n-(N/4-1)/2), -Ay/2)
+       frame pad_up .
+
+}
+
+
+part "qfn"
+
+
+set N = 24
+
+/*
+ * Note that this table is not a great example because it contains lots of
+ * fields we don't really need for iterations. But it's useful for driving
+ * the GUI to extremes.
+ */
+
+table
+    { P, Ax, Ay, Bx, By, C, D, SLx, SLy, SPx_tot, SPy_tot, SPx, SPy, Gx, Gy, 
Hx, Hy }
+    { 0.5mm, 5mm, 5mm, 3.2mm, 3.2mm, 0.9mm, 0.24mm, 2.1mm, 2.1mm, 1.2mm,
+      1.2mm, 0.45mm, 0.45mm, 4.3mm, 4.3mm, 5.25mm, 5.25mm }
+
+h_x0y0: vec @(-Hx/2, -Hy/2)
+h_x1y1: vec .(Hx, Hy)
+rect h_x0y0 h_x1y1 8mil
+
+/*
+ * we can't draw the package outline on the silk screen for it would print
+ * over the pads.
+ */
+#if 0
+g_x0y0: vec @(-Gx/2, -Gy/2)
+g_x1y1: vec .(Gx, Gy)
+#endif
+
+frame pads @
+
+// ARC, just for testing
+
+c: vec @(-1mm, 1mm)
+r: vec c(0mm, 0.5mm)
+e: vec c(-0.5mm, 0mm)
+arc c r e 2mil
+
+r2: vec c(0mm, 0.8mm)
+circ c r2 5mil
+
+/*
+x1 = 1+2*3
+x2 = (1+2)*3
+x3 = 1-(2+3)
+*/
+
+measy pad_up.c -> pad_up.o 0.2mm

Copied: trunk/eda/fped/examples/quad.fpd (from rev 5697, 
trunk/eda/fped/quad.fpd)
===================================================================
--- trunk/eda/fped/examples/quad.fpd                            (rev 0)
+++ trunk/eda/fped/examples/quad.fpd    2009-12-02 15:36:00 UTC (rev 5748)
@@ -0,0 +1,15 @@
+frame c {
+       vec @(1mm, 0mm)
+       circ . @
+}
+
+part "quad"
+
+vec @(-1mm, 1mm)
+frame c .
+vec @(1mm, -1mm)
+frame c .
+vec @(-1mm, -1mm)
+frame c .
+vec @(1mm, 1mm)
+frame c .

Copied: trunk/eda/fped/examples/sc89.fpd (from rev 5697, 
trunk/eda/fped/sc89.fpd)
===================================================================
--- trunk/eda/fped/examples/sc89.fpd                            (rev 0)
+++ trunk/eda/fped/examples/sc89.fpd    2009-12-02 15:36:00 UTC (rev 5748)
@@ -0,0 +1,80 @@
+/* MACHINE-GENERATED ! */
+
+frame pad {
+       corner: vec @(-Px/2, -Py/2)
+       x: vec .(Px, 0mm)
+       y: vec corner(0mm, Py)
+       pad "$pad" . x
+}
+
+frame pad_ne {
+       set pad = 2
+
+       _pad_ne_0: vec @(-Px/2, -Py/2)
+       frame pad .
+}
+
+frame pad_nw {
+       set pad = 1
+
+       _pad_nw_0: vec @(Px/2, -Py/2)
+       frame pad .
+}
+
+frame pad_sc {
+       set pad = 3
+
+       _pad_sc_0: vec @(0mm, Py/2)
+       frame pad .
+}
+
+frame outline {
+       top: vec @(0mm, Oy/2)
+       bottom: vec @(0mm, -Oy/2)
+       bot_right: vec .(Ox/2, 0mm)
+       bot_left: vec bottom(-Ox/2, 0mm)
+       line . bot_right 5mil
+       top_right: vec top(Ow/2, 0mm)
+       top_left: vec top(-Ow/2, 0mm)
+       line . top_right 5mil
+       middle: vec @(0mm, Oh)
+       mid_rightmost: vec .(Ox/2, 0mm)
+       line . bot_right 5mil
+       mid_leftmost: vec middle(-Ox/2, 0mm)
+       line . bot_left 5mil
+       mid_right: vec middle(Ow/2, 0mm)
+       line top_right . 5mil
+       line . mid_rightmost 5mil
+       mid_left: vec middle(-Ow/2, 0mm)
+       line mid_leftmost . 5mil
+       line top_left . 5mil
+}
+
+package "SC89"
+table
+    { Px, Py, Gy, Wx }
+    { 0.5mm, 0.6mm, 0.7mm, 1.5mm }
+
+table
+    { Ox, Oy, Oh, Ow }
+    { 2mm, 2.2mm, 0.6mm, 0.85mm }
+
+ref_up: vec @(0mm, Gy/2)
+frame pad_sc .
+ref_down_c: vec @(0mm, -Gy/2)
+ref_down_r: vec .(Wx/2, 0mm)
+frame pad_ne .
+ref_down_l: vec ref_down_c(-Wx/2, 0mm)
+frame pad_nw .
+dummy: vec @(0.2mm, 0mm)
+frame outline @
+measx pad.corner >> pad.x -0.6mm
+measy pad.corner >> pad.y 0.8mm
+measy ref_down_l >> pad.corner 0.5mm
+measx pad.corner -> pad.x -0.3mm
+measy pad.corner >> ref_down_l 0.5mm
+measy dummy >> outline.bot_right 1.1mm
+measy outline.mid_rightmost >> dummy 0.3mm
+measy outline.top_right >> outline.bot_right 1.2mm
+measx outline.top_left >> outline.top_right 0.3mm
+measx outline.bot_left >> outline.bot_right -0.8mm

Copied: trunk/eda/fped/examples/tab.fpd (from rev 5697, trunk/eda/fped/tab.fpd)
===================================================================
--- trunk/eda/fped/examples/tab.fpd                             (rev 0)
+++ trunk/eda/fped/examples/tab.fpd     2009-12-02 15:36:00 UTC (rev 5748)
@@ -0,0 +1,16 @@
+/*
+ * row selection example
+ */
+
+part "tab"
+
+table
+    { x, x2 }
+    { 1mm, 1 }
+    { 2mm, 4 }
+    { 3mm, 9 }
+vec @(x, 0mm)
+circ @ .
+c: vec @(x-1mm, -4mm)
+vec c(0.5mm, 0.5mm)
+pad "$x2" c .

Deleted: trunk/eda/fped/fbga.fpd
===================================================================
--- trunk/eda/fped/fbga.fpd     2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/fbga.fpd     2009-12-02 15:36:00 UTC (rev 5748)
@@ -1,56 +0,0 @@
-/* MACHINE-GENERATED ! */
-
-frame pad {
-       set Px = 0.5mm
-
-       set Py = 0.5mm
-
-       set cname = col+1
-
-       set e = 1mm
-
-       __0: vec @(col*e-Px/2, row*-e-Py/2)
-       __1: vec .(0mm, Py)
-       __2: vec __0(Px, 0mm)
-       rpad "$rname$cname" __1 .
-}
-
-frame inner {
-       loop col = 2, 3
-
-       loop enable = 1, inner
-
-       frame pad @
-}
-
-frame last {
-       loop col = 4, 5
-
-       frame pad @
-}
-
-frame first {
-       loop col = 0, 1
-
-       frame pad @
-}
-
-package "Fake_BGA"
-table
-    { row, rname, inner }
-    { 0, "A", 1 }
-    { 1, "B", 1 }
-    { 2, "C", 0 }
-    { 3, "D", 0 }
-    { 4, "E", 1 }
-    { 5, "F", 1 }
-
-frame last @
-frame first @
-frame inner @
-measy pad.__0 -> pad.__1 0.2mm
-measy pad.__0 -> pad.__0 0.5mm
-measx pad.__0 -> pad.__2 -0.3mm
-measx pad.__0 -> pad.__0 -0.6mm
-measy pad.__0 >> pad.__1 0.8mm
-measx pad.__0 >> pad.__2 -0.9mm

Deleted: trunk/eda/fped/meas.fpd
===================================================================
--- trunk/eda/fped/meas.fpd     2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/meas.fpd     2009-12-02 15:36:00 UTC (rev 5748)
@@ -1,24 +0,0 @@
-/*
- * new-style measurements demo
- */
-
-part "measurements"
-loop x = -2, 2
-A: vec @(0mm, 0mm)
-B: vec @(x*2mm, 2mm)
-C: vec @(0mm, 4mm)
-
-/*
- * If we measure (x, y), y trumps x
- */
-meas "A -> B = " A -> B 0.2mm
-meas "A <- B = " A <- B 0.5mm
-
-meas "A >> B = " A >> B 1.5mm
-
-measx "x(A -> B) = " A -> B -0.5mm
-measx "x(A >> B) = " A >> B -1mm
-measy "y(A -> B) = " A -> B -2mm
-measy "y(A >> B) = " A >> B -4.5mm
-
-meas "B -> C = " B -> C 0.5mm

Deleted: trunk/eda/fped/qfn.fpd
===================================================================
--- trunk/eda/fped/qfn.fpd      2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/qfn.fpd      2009-12-02 15:36:00 UTC (rev 5748)
@@ -1,73 +0,0 @@
-/*
- * Example of a QFN package (and general construction site to experiment with
- * fped features during development)
- *
- * Everything you see here is likely to change sooner or later.
- *
- * http://www.nxp.com/acrobat/packages/footprint/SOT616-1_fp_reflow.pdf
- */
-
-frame pad_up {
-       c: vec @(-D/2, 0mm)
-       o: vec c(D, C)
-       set pad = n+1
-       pad "$pad" c .
-}
-
-frame pads {
-       loop n = 0, N/4-1
-
-       vec @(P*(n-(N/4-1)/2), -Ay/2)
-       frame pad_up .
-
-}
-
-
-part "qfn"
-
-
-set N = 24
-
-/*
- * Note that this table is not a great example because it contains lots of
- * fields we don't really need for iterations. But it's useful for driving
- * the GUI to extremes.
- */
-
-table
-    { P, Ax, Ay, Bx, By, C, D, SLx, SLy, SPx_tot, SPy_tot, SPx, SPy, Gx, Gy, 
Hx, Hy }
-    { 0.5mm, 5mm, 5mm, 3.2mm, 3.2mm, 0.9mm, 0.24mm, 2.1mm, 2.1mm, 1.2mm,
-      1.2mm, 0.45mm, 0.45mm, 4.3mm, 4.3mm, 5.25mm, 5.25mm }
-
-h_x0y0: vec @(-Hx/2, -Hy/2)
-h_x1y1: vec .(Hx, Hy)
-rect h_x0y0 h_x1y1 8mil
-
-/*
- * we can't draw the package outline on the silk screen for it would print
- * over the pads.
- */
-#if 0
-g_x0y0: vec @(-Gx/2, -Gy/2)
-g_x1y1: vec .(Gx, Gy)
-#endif
-
-frame pads @
-
-// ARC, just for testing
-
-c: vec @(-1mm, 1mm)
-r: vec c(0mm, 0.5mm)
-e: vec c(-0.5mm, 0mm)
-arc c r e 2mil
-
-r2: vec c(0mm, 0.8mm)
-circ c r2 5mil
-
-/*
-x1 = 1+2*3
-x2 = (1+2)*3
-x3 = 1-(2+3)
-*/
-
-measy pad_up.c -> pad_up.o 0.2mm

Deleted: trunk/eda/fped/quad.fpd
===================================================================
--- trunk/eda/fped/quad.fpd     2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/quad.fpd     2009-12-02 15:36:00 UTC (rev 5748)
@@ -1,15 +0,0 @@
-frame c {
-       vec @(1mm, 0mm)
-       circ . @
-}
-
-part "quad"
-
-vec @(-1mm, 1mm)
-frame c .
-vec @(1mm, -1mm)
-frame c .
-vec @(-1mm, -1mm)
-frame c .
-vec @(1mm, 1mm)
-frame c .

Deleted: trunk/eda/fped/sc89.fpd
===================================================================
--- trunk/eda/fped/sc89.fpd     2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/sc89.fpd     2009-12-02 15:36:00 UTC (rev 5748)
@@ -1,80 +0,0 @@
-/* MACHINE-GENERATED ! */
-
-frame pad {
-       corner: vec @(-Px/2, -Py/2)
-       x: vec .(Px, 0mm)
-       y: vec corner(0mm, Py)
-       pad "$pad" . x
-}
-
-frame pad_ne {
-       set pad = 2
-
-       _pad_ne_0: vec @(-Px/2, -Py/2)
-       frame pad .
-}
-
-frame pad_nw {
-       set pad = 1
-
-       _pad_nw_0: vec @(Px/2, -Py/2)
-       frame pad .
-}
-
-frame pad_sc {
-       set pad = 3
-
-       _pad_sc_0: vec @(0mm, Py/2)
-       frame pad .
-}
-
-frame outline {
-       top: vec @(0mm, Oy/2)
-       bottom: vec @(0mm, -Oy/2)
-       bot_right: vec .(Ox/2, 0mm)
-       bot_left: vec bottom(-Ox/2, 0mm)
-       line . bot_right 5mil
-       top_right: vec top(Ow/2, 0mm)
-       top_left: vec top(-Ow/2, 0mm)
-       line . top_right 5mil
-       middle: vec @(0mm, Oh)
-       mid_rightmost: vec .(Ox/2, 0mm)
-       line . bot_right 5mil
-       mid_leftmost: vec middle(-Ox/2, 0mm)
-       line . bot_left 5mil
-       mid_right: vec middle(Ow/2, 0mm)
-       line top_right . 5mil
-       line . mid_rightmost 5mil
-       mid_left: vec middle(-Ow/2, 0mm)
-       line mid_leftmost . 5mil
-       line top_left . 5mil
-}
-
-package "SC89"
-table
-    { Px, Py, Gy, Wx }
-    { 0.5mm, 0.6mm, 0.7mm, 1.5mm }
-
-table
-    { Ox, Oy, Oh, Ow }
-    { 2mm, 2.2mm, 0.6mm, 0.85mm }
-
-ref_up: vec @(0mm, Gy/2)
-frame pad_sc .
-ref_down_c: vec @(0mm, -Gy/2)
-ref_down_r: vec .(Wx/2, 0mm)
-frame pad_ne .
-ref_down_l: vec ref_down_c(-Wx/2, 0mm)
-frame pad_nw .
-dummy: vec @(0.2mm, 0mm)
-frame outline @
-measx pad.corner >> pad.x -0.6mm
-measy pad.corner >> pad.y 0.8mm
-measy ref_down_l >> pad.corner 0.5mm
-measx pad.corner -> pad.x -0.3mm
-measy pad.corner >> ref_down_l 0.5mm
-measy dummy >> outline.bot_right 1.1mm
-measy outline.mid_rightmost >> dummy 0.3mm
-measy outline.top_right >> outline.bot_right 1.2mm
-measx outline.top_left >> outline.top_right 0.3mm
-measx outline.bot_left >> outline.bot_right -0.8mm

Deleted: trunk/eda/fped/tab.fpd
===================================================================
--- trunk/eda/fped/tab.fpd      2009-12-02 14:55:11 UTC (rev 5747)
+++ trunk/eda/fped/tab.fpd      2009-12-02 15:36:00 UTC (rev 5748)
@@ -1,16 +0,0 @@
-/*
- * row selection example
- */
-
-part "tab"
-
-table
-    { x, x2 }
-    { 1mm, 1 }
-    { 2mm, 4 }
-    { 3mm, 9 }
-vec @(x, 0mm)
-circ @ .
-c: vec @(x-1mm, -4mm)
-vec c(0.5mm, 0.5mm)
-pad "$x2" c .




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2009-12-02 22:02:58 +0100 (Wed, 02 Dec 2009)
New Revision: 5749

Added:
   developers/werner/cncmap/tpath/
   developers/werner/cncmap/tpath/NOTES
Log:
Added some thoughts about tool path generation. For further study.
For now, we limp along with what cam.py can do.



Added: developers/werner/cncmap/tpath/NOTES
===================================================================
--- developers/werner/cncmap/tpath/NOTES                                (rev 0)
+++ developers/werner/cncmap/tpath/NOTES        2009-12-02 21:02:58 UTC (rev 
5749)
@@ -0,0 +1,41 @@
+Tool path generation means to take the strokes defining traces, pads,
+rings, etc., from the Gerber and converting them to strokes defining
+outlines. This is difficult.
+
+http://web.media.mit.edu/~neilg/fab/dist/cam.py does this kind of work
+for us, but it has a number of limitations:
+
+- only one strategy for solving conflicts (see below)
+- doesn't detect if connectivity of result doesn't match original
+- can produce unclean cuts (see below)
+- cannot operate completely in batch mode
+- restrictive license (requires permission for commercial use)
+
+Conflicts arise when we cannot just draw an outline around the traces,
+but have to remove either more or less material. Most of the conflicts
+are trivial, and resolving them doesn't compromise the accuracy of the
+result, e.g., leaving material on the inside of an angle < 180 deg.
+
+However, if the bit diameter exceeds the minimum clearance, we may
+have a number of places where we have to choose between either cutting
+into the traces or leaving bridges. If the nominal clearance is unknown,
+we may not even know in advance whether a given bit will cause conflicts
+or not.
+
+cam.py avoids cutting into traces, but doesn't warn if this leaves
+bridges connecting areas not connected in the original.
+
+Also, in many cases, it would be desirable to accept cutting into traces
+only where observing nominal clearance causes a conflict, but to follow
+the rules in all other cases.
+
+The only resolution strategy supported by cam.py is to globally reduce
+the nominal bit size, until conflicts disappear. Unfortunately, this
+means that we will cut into all traces, no matter whether they would
+have suitable clearance or not.
+
+Last but not least, cam.py may leave behind narrow "islands" between
+traces. These islands are not connected to anything, but if they're
+fine enough, they may partially separate from the substrate, bend, and
+thus make unexpected connections. It would be desirable to remove all
+such narrow structures in a cleanup pass.




--- End Message ---
_______________________________________________
commitlog mailing list
commitlog@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/commitlog

Reply via email to