Fwd: [EE] Automatic BOM generation in Eagle

3 views
Skip to first unread message

Bryan Bishop

unread,
Feb 15, 2009, 3:13:59 PM2/15/09
to openmanufacturing, kan...@gmail.com
---------- Forwarded message ----------
From: Olin Lathrop <olin_p...@embedinc.com>
Date: Sun, Feb 15, 2009 at 2:08 PM
Subject: [EE] Automatic BOM generation in Eagle
To: "Microcontroller discussion list - Public." <pic...@mit.edu>

I've finally gotten around to making use of the new attributes feature in
Eagle 5 to help in generating the BOM.

In previous versions, Eagle only had a few fixed attributes like VALUE,
NAME, etc. While creating the schematic you might look up some parts and
get specific manufacturer and supplier part numbers, but there was no way to
save that information in Eagle for later use in generating the BOM. There
was also no hidden value field where you could specify more than you wanted
showing on the schematic. Parts of BOM creation could be automated, but
there was still a lot of manual one off work per component that couldn't be
leveraged easily between designs.

In version 5 they added arbitrary attributes. These are named text strings
that can be associated with library parts or specific instances of a part.
Eagle attaches no meaning to these attributes, but will store them, allow
them to be retrieved by ULPs, and allow them to be drawn on the schematic
and board. There can be any number of these, so long as their names don't
conflict with the small handful of built-in attributes that have special
meaning to Eagle.

This allows much more automated BOM generation. For example, you can create
a PARTNUM attribute with the manufacturer's part number when you're drawing
the schematic, then use the PARTNUM value later when making the BOM. There
are no specific reserved attributes for this purpose, which is both a good
and bad thing. It is good because I wouldn't want Cadsoft telling me what I
want on my BOM and how it needs to be entered because they'd probably mess
it up and just make things difficult having to deal with their restrictions.
The downside is that everyone now has to define conventions for using
certain attributes on their own. That would make sharing ULPs and other
tools using these attributes difficult. All in all, I'd much rather have it
this way than them imposing something inconvenient, so I'm happy with the
new facilities in Eagle 5.

I've got my first few projects since I upgraded to Eagle 5 working their way
towards the BOM stage. As a result I've spent some time thinking about how
to use the attributes and writing tools to implement the new features. I'm
sure things will still evolve significantly as I get more experience with
this, but I've gotten far enough to let others try it out.

If you want to see what I've got so far, go to
http://www.embedinc.com/pic/dload.htm and install the Eagle tools release.
The EAGLE_ATTR documentation file lists the attribute conventions the tools
currently use. As I said, this is just the start and I expect this to
evolve over time. The Eagle ULP PARTS_CSV and the external program CSV_BOM
is what I currently have to automate BOM generation. See the CSV_BOM
documentation file for details.

I've only just begun to add the new information to the libraries where
appropriate. I'll be doing a lot more of that in the next few weeks as
several BOMs are coming up. Most of the library devices in the current
release don't have any of the new information yet.

I'm hoping we don't all use different conventions to attach BOM information
to Eagle parts using the new attributes feature. Has anyone done this yet?
I'd like to see your attribute conventions if you have. If not, please at
least consider what I've done before going out and doing something
incompatible. It would be nice if we could interchange ULPs and external
programs for this purpose.


********************************************************************
Embed Inc, Littleton Massachusetts, http://www.embedinc.com/products
(978) 742-9014. Gold level PIC consultants since 2000.
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Reply all
Reply to author
Forward
0 new messages