-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Mon, Jan 28, 2008 at 08:29:06AM +1300, Apptech wrote: > > Well, to be exact a 24*24=576 grid of leds with another > > ~35 supporting > > parts. > > >> Copy and paste is the answer. Mentor graphics. > > > Yuck. :) > > I haven't done this for some years, but with the Ollllld DOS > Autotrax / Protel program this would be doable with care. > The PCB layout package structure is very (ie reasonably) > consistent and while I never had a specification for it , it > was structured enough that I could sort out what I needed by > inspection and head scratching. > > The file is in plain text. > >From memory so details are not 100% certain: > Each component had a location description and strings for > the component value and description, a 2 byte ASCII > descriptor for the size and a 1 byte value for the > orientation (4 x 90 degree steps in this case). > So by editing this file, either manually or under program > control one could eg resize the strings for component values > and relocate them relative to the component's schematic > image. > This would allow you to (if clever and lucky enough) eg move > the value string for a resistor onto the resistor body, size > it down to fit and align it with the resistor direction and > do the same with the part number but place it offset. The > end result was (meant to be) that the resistors had the > component value visible when not inserted and the component > name still visible when the component was in place. > > While that is an olde steam driven package (and now > available for free) it is readable by eg Protel DXP and > therefore perhaps a number of other packages. > > It may be that more modern packages are similarly "hackable" > but that is far from certain. Yup, all of gEDA is designed that way. I very often edit by files by hand to do things like change a whole pile of hole sizes or device types in one swoop. What's missing is the libraries to abstract away the details of parsing the files so you can concentrate on what you want to do in your code. Theres a number of people writing various automatic symbol and footprint generators for instance, but no "python-geda" library that I know of. > In the case of LED layout a you describe it would be "just a > matter of programming" [tm] to write a program to auto > layout and connect LEDs and other components as desired. You > could even link it into a schematic file if desired. I think a good approach would be iterative: Write a library, geda.schematic, that can represent a schematic in memory. Next add the ability to write that schematic to disk, it doesn't have to look pretty when opened up in a schematic editor, but so long as the right nets are connected we're good. The first usage of the library would be an led array schematic generator. Using the above library it would spit out a schematic file filled with a big led array. Interfacing to the rest of the circuit would be via named nets. (Vcc, GND, LED_IN_x etc) To support this a third program would be needed that can take a "connections only" auto-generated schematic and represent it graphically for understanding and debugging. Fortunately there's plenty of software out there, like graphviz, that can take graphs and make meaningful pictures. - -- http://petertodd.org -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFHnVH73bMhDbI9xWQRAj0IAJ9UIHnCoTVguJXaXBddhyVrYy7kjACghpPu 30FlP/q9s/fJYpuin0ey33E= =ByP4 -----END PGP SIGNATURE----- -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist