CadSoft EAGLE development team developing XML format for schematic, layout and parts libraries!

Pt 10435
Big news!

There is a growing movement in the world of electronics called “Open-source hardware” – it has rapidly become very popular over the last 5 years or so, we’re very close to defining what it is and what we need going forward. It’s been a long road with hundreds of talented people working very hard releasing their projects and helping others. Today we just got some great news from the CadSoft EAGLE development team about the their long term commitment to text based file formats in the world of electronics development. With their permission I am posting this here. It’s extremely exciting for those of us who wanted an XML format for files and we’re thrilled CadSoft EAGLE has said they’re committed to it!

Here’s the overview of what we learned:

  • CadSoft EAGLE (our preferred schematic/layout software) has told us they are committed to a text based format in the long term.
  • The CadSoft EAGLE development team is developing a new format for schematic, layout and parts libraries that is XML, this means every object and line will be written out in text description.
  • You won’t have to worry about binary file corruption, you will be able to hand-edit or generate schematics and layouts and of course the magic of version-control (such as github) will be easier than ever with real text ‘diff’s!
  • This will be a fully documented format and also of course a converter for old CadSoft EAGLE binary-type formats.

This is a great direction and I encourage you to support EAGLE as you decide which tools to use now and in the future. But that’s not all, I’ve chatted with the element-14 folks and they’re all set up for your feedback, if they’re very interested in Maker voices their product development. So here’s your chance folks – please stop by the site and community.

I’ll post up more as there are new developments. For the folks have asked for a “file format” anyone can read for schematics, layouts and parts libraries – we’re now one step closer with a commitment from one of the most popular tool makers. Special thanks to Windel (EMSL) and Ladyada (Adafruit) and Drew from element-14!

Be sure to visit element-14 if you have feedback and/or questions!

Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here:

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in!

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community!

CircuitPython – The easiest way to program microcontrollers –

Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !


  1. JSON would have been nice…

  2. This is really great! I like the idea of an open format, even though I guess that the specification of the format is closed and not driven by the community.

    I think the article was written by a person who never wrote a parser (binary/text/XML) and never looked at an XML file. For example, I think only a small percentage of people will be able “hand-edit” a PCB that is bigger than my thumbnail. I have seen corrupted XML files and there was not much that could be repaired. Also, it really depends how the format is defined, but I doubt that the magic of version-control (such as github) will really help. When dealing with 2.5D layouts, even smaller changes can create bigger changes in the underlaying data and I would be surprised if two people working on different part of the schematic or PCB could use a text diff to merge their work (like in source code). But maybe I will be pleasantly surprised.

    Still this is the best news in a long time and I would like to raise my glass of Pumpkin Ale that I just poured and thank everybody who was involved in this.

  3. JSON works for web pages, but for tagged data, XML is better – the libraries to manipulate, verify, edit, etc. are more mature and XML is for organizing data. JSON is an object container format. You can use either for most things, but for data interchange in different contexts XML works better. For objects, JSON.

    That said, this is a reason to celebrate.

    I can do CAD, but if I have an identical SSOP package where only the pins are different, it is much easier to use any text editor to relabel the pins than to do it one at a time selecting them (oops, wrong layer, did I save it…).

    Eagle is fine, but the hard part is always the parts library.

    If all the dimensions are in the datasheet as numbers, I can just type them in directly instead of trying to do something like the old “operation” game.

Sorry, the comment form is closed at this time.