Creating A PCB In Everything: Upverter

For the last five months, I’ve been writing a series of posts describing how to build a PCB in every piece of software out there. Every post in this series takes a reference schematic and board, and recreates all the elements in a completely new PCB tool.

There are three reasons why this sort of review is valuable. First, each post in this series is effectively a review of a particular tool. Already we’ve done Fritzing (thumbs down), KiCad (thumbs up), Eagle (thumbs up), and Protel Autotrax (interesting from a historical perspective). Secondly, each post in this series is a quick getting started guide for each PCB tool. Since the reference schematic and board are sufficiently complex for 90% of common PCB design tasks, each of these posts is a quick how-to guide for a specific tool. Thirdly, this series of posts serves as a basis of comparison between different tools. For example, you can do anything you want in KiCad and most of what you want in Eagle. Fritzing is terrible, and Autotrax is the digital version of the rub-on traces you bought at Radio Shack in 1987.

With that introduction out of the way, let’s get cranking on Upverter.

A little bit about Upverter

Upverter was founded in 2010 as an entirely web-based EDA tool aimed at students, hobbyists, and Open Hardware circuit designers. This was one of the first completely web-based circuit design tools and Upverter’s relative success has been a bellwether for other completely web-based EDA tools such as and EasyEDA.

I would like to take a second to mention Upverter is a Y Combinator company (W11), which virtually guarantees this post will make it to the top of Hacker News. Go fight for imaginary Internet points amongst yourselves.

Upverter is a business after all, so how are they making money? Most EDA suites offer a free, limited version for personal, hobbyist, and ‘maker’ projects, and Upverter is no exception. The professional tier offers a few more features including CAM export, 3D preview, an API, simulation (coming soon), BOM management, and unlimited private projects for $125 per seat per month, or $1200 per seat per year.

To give you a basis of comparison for that subscription fee, Eagle CAD’s new license scheme gives you everything – 999 schematic sheets, 16 layers, and unlimited board area – for $65 per month, or $500 per year. Altium’s CircuitStudio comes in at $1000 for a one-year license. There are more expensive EDA suites such as Altium Designer and OrCAD, but you have to call a sales guy just to get a price.

Upverter is positioning itself as a professional tool at a professional price. There are better tools out there, of course, but there are thousands of businesses out there designing products with tools that cost $500 to $1000 per seat per year. In any event, this is all academic; the Hackaday crowd gravitates towards the free end of the market, whether that means beer or speech.

A big draw for Upverter is their Parts Concierge service. You’ll never have to create a part from scratch again, so the sales copy says. Apparently, Upverter is using a combination of very slick scripts to pull part layouts off a datasheet and human intervention / sanity check to create these parts. Does it work? We’re going to find out in the review below.

Continue reading “Creating A PCB In Everything: Upverter”

Friday Hack Chat: KiCad EDA Suite with Wayne Stambaugh

KiCad is the premiere open source electronics design automation suite. It’s used by professionals and amateurs alike to design circuits and layout out printed circuit boards. In recent years we’ve seen some incredible features added to KiCad like an improved 3D viewer and push-and-shove routing. This Friday at 10 am PST, join in a Hack Chat with KiCad lead developer [Wayne Stambaugh] to talk about recent improvements and what the team has planned for KiCad in the future.

[Wayne] has been an electronics engineer for over 30 years with a wide range of experience in analog and digital hardware design and embedded and application software design. He started hacking on KiCad ten years ago when the project was first opened to public development and a little over two years ago became the project leader. This is an excellent opportunity to learn how the development team works, what their current goals are, and to talk all things KiCad.

Don’t miss this Hack Chat! Here’s a handy web tool to help convert Jan. 20 at 10:00 am PST to your local time.

Wait, There’s Tindie Too!

Also on Friday, taking place just an hour before the KiCad chat, is a Tindie Hack Chat. All are welcome as the 9:00 am PST discussion gets under way. Discussion will focus on all aspects of selling unique hardware on Tindie.

Here’s How to Take Part:

Buttons to join the project and enter Hack Chat

Hack Chat are live community events that take place in the Hack Chat group messaging. Visit that page (make sure you are logged in) and look for the “Join this Project Button” in the upper right. Once you are part of the project, that button will change to “Team Messaging” which takes you to the Hack Chat.

You don’t have to wait for Friday, join Hack Chat whenever you like and see what the community is currently talking about.

 Join Us Next Week Too for CircuitPython

Block out your calendar for noon PST on Friday the 27th for next week’s Hack Chat. Joining us are Adafruit’s Ladyada, Tony DiCola, and Scott Shawcoft. They’ll be leading a discussion about CircuitPython Beta, Adafruits new extension to MicroPython that adds SAMD21 support and other enhancements.

Friday Hack Chat: Eagle PCB Design with Matt Berggren

Eagle is a household name for all Hackaday regulars. Here’s your chance to learn about upcoming features, get your ‘how do I do this in Eagle?’ questions answered, and get your wishlist items heard. Join us on Friday at 12:00 PST for a live Hack Chat about the Eagle PCB Design software.

Hosting this week’s discussion is [Matt Berggren], also known on as technolomaniac. Matt is the Director of Autodesk Circuits and with Autodesk’s acquisition of Eagle last summer, the popular schematic design and PCB layout software falls under his purview. He has an extensive background in designing printed circuit boards — if you can do it in EDA software he knows how — this is an excellent opportunity to get answered the questions that have been stumping you.

Don’t miss this Hack Chat! Here’s a handy web tool to help convert 1/13/17 at 12:00 PST to your local time.

Here’s How to Take Part:

Buttons to join the Hacker Channel and enter Hack Chat

Hack Chat are live community events that take place in the Hacker Channel. Visit that page (make sure you are logged in) and look for the “Join this Project Button” in the upper right. Once you are part of the Hacker Channel, that button will change to “Team Messaging” which takes you to the Hack Chat.

You don’t have to wait for Friday, join Hack Chat whenever you like and see what the community is currently talking about.

Join Us Next Week Too for KiCad!

Are you more of a KiCad person than an Eagle person? You should still drop by this week to see if Matt changes your mind. But block out your calendar next week when [Wayne Stambaugh], one of the lead developers of KiCad will join us for a Hack Chat on Friday, 1/20/17.

Creating A PCB In Everything: Introduction

engineering-drawingA few years ago, I wrote a few columns titled Making A Thing. These columns were a tutorial of sorts for several different 3D modeling programs. This column wasn’t meant to be a complete guide to modeling an object in OpenSCAD or SolidWorks, it was just step-by-step instructions on how to make one specific thing with one specific piece of software.

More than a few people in the Hackaday community found this column useful or at the very least an interesting pedagogical device. When starting out with any kind of productivity software, you don’t need to know how to do everything, you just need to know how to do the most common tasks.

Since the Making A Thing column was so popular, I felt it was time to revive this idea with another design task we often face. As you have already guessed, we’re going to be making printed circuit boards. Continuing the unique tutorial format created in the previous iteration of this column, Making a PCB will build one specific circuit in multiple EDA suites.

The Circuit

The entire concept of demonstrating how to build one thing in a specific software package necessitates a model thing. Before I even begin writing the first Making A PCB column, I need to design something that’s sufficiently complex but still relatively simple, and something that’s hopefully somewhat useful. Breakout boards are extremely simple, perhaps too much. In the course of these programs, I’ll need to demonstrate how to make a part in each specific software suite, so fewer pins are better.

Lacking any creativity of my own, I’ve settled on a very small ATtiny85 Arduino derivative from Tim a.k.a. [cpldcpu]. Tim’s Nanite 85 is an exceptionally small Arduino-compatible board based on the ATtiny85, complete with a USB port, LED, and a few pins of I/O. It’s simple but sufficiently complex to give an introduction to a PCB design suite.

I’m not going to outright copy Tim’s Nanite 85, though. It’s much clearer if parts aren’t stacked on top of each other, and I’d like to give myself a little breathing room on the layout. I’ve redesigned the circuit of the Nanite 85 to use mostly through-hole parts on a slightly larger board. I’m calling my version the Nanite Wesley, and if you get that reference, thumbs up for you.

The schematic for the Nanite Wesley
The Nanite Wesley board. Copper pours not shown

Is this how a board should be laid out? No, absolutely not. I could probably do this as a single-layer board. This is a very inefficient layout, and I like rounded corners on my boards. It’s good enough, though, and it works. This is meant to be a tutorial on how to use a PCB design package, not a tutorial on how to design a PCB. Your criticisms in this regard are noted and ignored.

What These Tutorials Will Consist Of

You cannot use a PCB design package until you know how to make a part. Yes, Eagle has wonderful libraries for almost everything you can imagine, KiCad has plenty of parts on the Internet, and if you’re using a cloud-based PCB software, almost everything will be provided for you. If you make a PCB, eventually you’ll have to make your own part, though, and each tutorial will begin with making a DIP-8 ATtiny85. Everything else on this board is a jellybean part. Either way, the process of making a part and package for a Zener is the same as making one for a microcontroller.

The next part of the tutorial will consist of schematic capture. This means placing the parts in the schematic, drawing wires between the pins and pads, and naming them. From there, it’s time to actually make a board, and this means dropping the parts down, putting traces between all the pins, doing the board outline, pouring copper, and mechanical considerations.

With the schematic and board designed, it will be time to send it off to a fab house. For Eagle and KiCad, this is easy; OSHpark accepts Eagle .brd and KiCad .pcb files, but this is cheating. We’re going to use CAM to generate real Gerber files. If you make enough PCBs, you’ll have to learn it eventually.

Caveats and Poor Design

There are a lot of things that go into making a ‘proper’ PCB, including isolation, direct traces to decoupling capacitors, making sure pixies don’t go around sharp corners and a thousand other items that won’t be discussed in these tutorials. There’s a reason I won’t be discussing this. This is a guide on how to use a PCB design tool, not how to design a PCB.

What else should I do?

As you can probably guess from the schematic above, the first PCB software I’m going to cover is Eagle. KiCad is on the list, as is Fritzing, Altium CircuitMaker, and OrCAD. In the interests of putting PCB design in a historical context, I have a copy of AutoTRAX and an old DOS machine. I’ll also be covering a few of the cloud-only design tools such as Upverter.

That’s enough software suites to get started, but as with the Making A Thing series, I’m going to be looking for suggestions from the peanut gallery. I can’t change the circuit I’m making, as that’s the entire point of this series, but I am looking for suggestions on other tools to cover. What else can I do? Want me to grab a piece of copper clad board, sticker overlays, and some photostatic film? I can do that. Are you at a web-based EDA startup, and want some free advertising? Leave a note in the comments.

Thanks to our efforts to slowly improve the backend of Hackaday, you’ll be able to access all the Making A PCB In Everything posts from the series list below.

The Future Of Eagle CAD

Last week, Autodesk announced their purchase of CadSoft Eagle, one of the most popular software packages for electronic design automation and PCB layout.

Eagle has been around for nearly thirty years, and has evolved to become the standard PCB design package for electronic hobbyists, students, and engineering firms lead by someone who learned PCB design with Eagle. The reason for this is simple: it’s good enough for most simple designs, and there is a free version of Eagle. The only comparable Open Source alternative is KiCad, which doesn’t have nearly as many dedicated followers as Eagle.  Eagle, for better or worse, is a standard, and Open Source companies from  Sparkfun to Adafruit use it religiously and have created high-quality libraries of parts and multiple tutorials

I had the chance to talk with [Matt Berggren], former Hackaday overlord who is currently serving as the Director of Autodesk Circuits. He is the person ultimately responsible for all of Autodesk’s electronic design products, from Tinkercad, 123D,, and project Wire, the engine behind Voxel8, Autodesk’s 3D printer that also prints electronics. [Matt] is now the master of Eagle, and ultimately will decide what will change, what stays the same, and the development path for Eagle.

Continue reading “The Future Of Eagle CAD”

Reinventing VHDL Badly

A few years ago, Philip Peter started a little pet project. He wanted to build his own processor. This really isn’t out of the ordinary – every few months you’ll find someone with a new project to build a CPU out of relays, logic chips, or bare transistors. Philip is a software developer, though, and while the techniques and theory of building hardware haven’t changed much in decades, software development has made leaps and bounds in just the past few years. He’s on a quest to build a CPU out of discrete components.

Search the Internet for some tips and tricks for schematic capture programs like KiCad and Eagle, and you’ll find some terrible design choices. If you want more than one copy of a very specific circuit on your board, you have to copy and paste. Circuit simulation is completely separate from schematic capture and PCB design, and unit testing – making sure the circuit you designed does what it’s supposed to do – is a completely foreign concept. Schematic capture and EDA suites are decades behind the curve compared to even the most minimal software IDE. That’s where Philip comes in. By his own admission, he reinvented VHDL badly, but he does have a few ideas that are worth listening to.

Continue reading “Reinventing VHDL Badly”

KiCad Traducido al Español

KiCad ya es una gran herramienta para la captura esquemática y el diseño de PCB, pero el software sólo funciona si es posible utilizarlo. Para los mil millones de personas que no hablan inglés, esto significa que el idioma es la barrera más grande al momento de utilizar el mejor software para desarrollo de hardware. En los últimos meses, [ElektroQuark] ha estado liderando esfuerzos de localización al español de KiCad y estos se encuentran finalmente completados. También ha iniciado un foro de KiCad en idioma español para llevar el desarrollo de software hacia uno de los idiomas más hablado del planeta.

SpanishMientras que ha habido otros intentos por localizar KiCad a otros idiomas, la mayoría de estos proyectos se encuentran incompletos. En una actualización de KiCad hace algunos meses, la localización al español ya contaba con algunas cadenas ya traducidas, pero no demasiadas. Los esfuerzos de [ElektroQuark] han acercado KiCad a millones de hablantes nativos de español, no solo algunos de sus menús.

El español es la segunda lengua más hablada del planeta, mientras que el inglés es la tercera. Teniendo en cuenta solamente este hecho, parece absurdo que casi todas las herramientas de software para capturas esquemáticas y diseño de PCB sean localizados sólo al chino o al inglés. Los esfuerzos de [ElektroQuark] por localizar KiCad al español son un gran avance para un ya impresionante software.