From Tango Netlist to Eagle Schematic: A Complete Conversion Workflow
Overview
This workflow converts a Tango-format netlist into an Eagle-compatible schematic/netlist, producing files usable in Autodesk Eagle for PCB layout. It covers file preparation, parsing mapping, symbol and footprint assignment, connectivity validation, and final import into Eagle.
1. Prepare files
- Gather: Tango netlist file(s), component library (Tango and Eagle), and any CSV mapping tables.
- Backup: Make copies of original files.
- Normalize encoding: Ensure UTF-8 and consistent line endings.
2. Inspect Tango netlist structure
- Identify sections: header, component declarations (refs/values/footprints), pin lists, net definitions.
- Record fields: reference designator, value/part name, package/footprint, pin-to-net mappings, net names.
3. Create mapping table (Tango → Eagle)
- Columns: Tango part name, Tango footprint, Eagle device/symbol, Eagle package, Pin mapping.
- Populate from libraries; for unmatched parts, assign closest Eagle equivalent or mark for manual creation.
- Save as CSV for automated scripts.
4. Convert netlist format
Option A — Scripted conversion (recommended)
- Write a script (Python) to:
- Parse Tango netlist into internal representation (components, nets, pins).
- Apply mapping table to translate part names/packages and pin orders.
- Emit Eagle-format netlist (.net) or an XML/CSV Eagle import that matches Eagle’s netlist schema.
- Key details:
- Preserve reference designators and net connectivity.
- Reorder or remap pins when package pin numbering differs.
- Generate warnings for unmapped parts or pin mismatches.
Option B — Manual conversion
- Use spreadsheet to rewrite component and net tables into Eagle’s expected CSV columns.
- Manually check pin mappings.
5. Handle symbols & footprints
- For matched parts: ensure Eagle libraries contain required symbols/packages.
- For mismatches: create Eagle device with correct symbol and package; verify pad names/numbers match mapping.
- Check package rotations and pad shapes.
6. Validate connectivity
- Load converted netlist into a netlist validator script or into Eagle’s import utility.
- Verify:
- Net counts match original.
- Each component’s pins connect to the same nets as in Tango.
- No floating pins unless expected.
- Use a diff of net→pin lists between original and converted to detect discrepancies.
7. Import into Eagle
- Use Eagle’s netlist import (File → Import → Netlist) or open the netlist as project input.
- Review error/warning messages from Eagle and resolve library or package issues.
- Place components and run ERC/DRC checks.
8. Post-import checks
- Run Eagle Electrical Rule Check (ERC).
- Visually inspect critical nets (power, ground, differential pairs).
- Run schematic-to-board synchronization if moving to board layout; ensure no netlist merges/splits occurred.
9. Troubleshooting common issues
- Pin numbering mismatches: Revisit mapping table; confirm package pad names.
- Missing libraries: Add or create Eagle libraries before import.
- Net name changes: Normalize net naming rules (Eagle may disallow certain characters).
- Unmapped parts: Temporarily map to a placeholder device and replace later.
10. Automation tips
- Version-control mapping CSVs and conversion scripts.
- Log all warnings and create a checklist for manual fixes.
- Build unit tests comparing random component net connections between source and converted netlists.
Example: minimal Python conversion outline
python
# parse tango -> build components, nets # apply CSV mapping # emit eagle netlist format (CSV/XML)
Deliverables checklist
- Converted Eagle netlist file
- Mapping CSV used
- List of unmatched parts/pin warnings
- Validation report comparing source and converted connectivity
Leave a Reply