Skip to content

Vanellus-Technologies/idf-parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

idf-parser

Crates.io Documentation example workflow

Rust library for parsing Intermediate Data Format files used in PCB design.

The IDF specification describes three file types:

  • Board file .emn: Contains the board outline and component placement.
  • Panel file .emn: Contains the panel outline and board placement.
  • Library file .emp: Contains the component library.

Example usage:

use idf_parser::parse_board_file;
use idf_parser::parse_library_file;

let board = parse_board_file("src/test_files/board.emn").unwrap();
let panel = parse_board_file("src/test_files/panel.emn").unwrap();
let library = parse_library_file("src/test_files/library.emp").unwrap();

Currently, this only supports the IDF 3.0 format, given its wide adoption with version 4.0 being a newer standard that is not widely used yet.

IDF v 3.0 file specification

Limitations

  • Only the IDF 3.0 format is supported.
  • Only tested with a small number of IDF files,

Requests

If you are interested in contributing the following would be very helpful:

  • If you have an IDF file that does not parse correctly, please open an issue with the file attached.
  • Assist in implementation of the IDF 4.0 and 2.0 formats.

Maintainers

Laurence Cullen: laurence@vanellus.tech
Vanellus Technologies

About

Rust library for parsing Intermediate Data Format files used in PCB design.

Resources

License

Stars

Watchers

Forks

Languages