Who has went from an Arduino breadboard to a PCB? (Advice wanted)

I'd like advice on going from breadboard to PCB, the type of advice you'd give yourself knowing now, what you didn't know then?

I don't have any PCB creation experience, so if you have outsourced that for your project, I'm interested in hearing about that also.

I've prototyped on a Mega and have started drawing a block diagram in EasyEda.

This is a very open question and not simple to answer, need more information.
Like what components your using like voltage regulator or power supply ?

Will it be plug in type shield for the mega ?
Do you need to use mega ?

Are you wanting to make mega 256 has a complete new layout for the 256 ic and the other components you are using ?

  • Start smaller then work up to larger projects.

I haven't used EasyEDA but I've used DesignSpark (and I played around a bit with KiCad before I got frustrated trying to make a custom part that wasn't in the library).

You'll need to make a schematic with EasyEDA. Then it will help you make a board layout then it will generate Gerber files which are used to make the actual PC board.

I ordered the boards through Seeed Studio/Fusion who takes care of having the bare boards made in China. It cost me less than $100 USD for 10 or 15 boards about the size of a UNO, including about $30 for DHL shipping. There are other companies that offer similar services for hobbyists.

I soldered the boards myself.

There are a few ways of etching or machining boards yourself but if you have them made professionally you can have them silkscreened and solder-masked, and you can have plated-thru holes, and double-sided or multi-layer boards, etc.

I’ve taken a few projects off a bread board and made my own custom pcb’s. So far I have only designed around the 328pb chip because of the amount of information out there on making your own pcb with that chip. However my current project is most likely going to be an ESP32.

My suggestion, read. Once you are done reading, read some more. Expect that every time you make something, that between data sheets, programming instructions, how to use your board designer, pretty much everything, you are going to read at least a few thousand pages.

Second, you most likely will not get it right the first time, learn from your mistakes and move on.

In a nutshell, get used to reading a lot and making mistakes.

The most critical items are:

  1. external crystal oscillator (if you have one). Need to keep on very short runs.
  2. power in and bypassing power with a capacitor near each chip
  3. grounding needs to be well thought out.

You should know (in general) what each component does and what layout consideration there may be.

The Mega is not a good place to start. Too many pins for a novice to learn on.

2 Likes

Hello,

I have a device that is made on two pcbs. Working perfectly since 2019 in open air in my cattle farms.
One has the logic, runs on a ATMEGA 328, has a BT HC05 module on board for setup dialog,
and triggers signals that drive three optocouplers in the power pcb.
A crystal 16 MHz, decoupling capacitors, a small transistor BC557 to handle power savings, and an SDA + SCL bus to display its activity on a 20 x 4 LCD.
All about 4 x 5 cm. Phoenix connectors. Aviation grade MIL cables. (I'm an aviator and like them)
Printed in a good local company in Buenos Aires about 10 USD piece + 30days.
Excellent quality. Two layers and soldered holes between them.
The second is a power unit.
Both designed with Kicad, and both worked nice on the first try.
I do not have experience with the Mega MCU.
Of course you must read, write, read again, and test a lot.
But is not rocket science.
I'm sure you will succeed, feel free to ask in case you need any detail that could be useful for your project,
Kind regards,
Horacio

My advice is DO IT. It is easier than you think and, if you do find you are simply not up to designing a PCB, it shouldn't cost you anything.

That said, what you want is far from clear. There are a few quality proto shields for the Mega you already have, and one or two of those may be entirely satisfactory.

A next option is to design your own shield - again, for the Mega you already have.

If shields are not up to the job, I submit the fastest way to a square wheel would be to build your own Mega. All you need is the hole pattern for a Pro Mega on your custom motherboard.

I use KiCad, which I think is excellent, but I'm not really a kosher user, as I do preliminary design in DataCad. If you are tempted to use two CADs, note that KiCad will export DXF but not import(!). The KiCad forum is as good as this one.

I can't speak highly enough of JLC PCB. They are easy to use, the boards are cheap and of super quality, and the service is fast, fast, fast... Now we are in the 1990s,etching your own PCBs from blanks is a masochism that doesn't bear thinking about.

+2 for jlcpcb and easyeda.
Get them to do a design check before you order and pay.
You can do your own but get them to do one as well.

Hello,
I browsed today the Mega datasheet, and I fully agree that is far from being the simplest mcu to start with.
I also use the 40 pin t-hole Atmega 4809 that has more room than the basic 328. Is a very nice and cheap mcu.
Perhaps you can fit your bill with 4809. Take a look.
Kind regards to everyone!
H

When starting on a breadboard and aiming for a PCB design. Make sure you have the intermediate step of a working prototype. Something which is soldered and can be moved around and works.
I have started out building shields for Nanos and pro-minis that serve particular purposes and for ESP-01 and other ESP's AtTiny13a etc. But i always built a prototype before i start moving it to a schematic and then a PCB layout.

I am quite happy using Kicad. It is well documented and although it does take some effort to get your head around certain things, once you have, it is a breeze.

I tend to solder the parts on myself unless the package is to tricky for me, (i just got some boards in with a W5500 ethernet chip on there.) or if the amount of boards starts to exceed what i still consider fun.

Getting a PCBA order correctly can be tricky. Rotation output from the PCB software that you use may not be the same as what the PCB company uses, so you need to check everything.. Twice or more !

So anyway i recommend starting small, getting familiar with the software and with ordering process. Learn how to get the ideal layout by moving and rotating parts, and routing connections.

Thank you everyone for the replies, if below isn't sufficient information, please ask so I can update this.

I do not need all of the I/Os of the Mega, so I will take the suggestions of looking at the 328pb or 4809, however it looks like the 328pb has only 2kb of sram and the 4809 has 6kb of sram, which I am exceeding (I'm sure I could clean that up and be under 6kb, but not 2kb). Currently I am using 24252 bytes of storage and 6452 bytes of dynamic memory.

I am using (4) analog inputs, (10) digital input pins (one being the counter for pin 49 for frequency measurement <FreqMeasure.h>), (5) digital output pins. I am interfacing with an HC05, mcp4725 and an adafruit drv8871 breakout board as well as (4) relays, so I am using Tx1/Rx1 and SDA/SLC on the Mega. 5v component interfacing is required, I believe there is a lot of room for optimization, as an example there is probably a way to replace my relays with transistors as well.

I need strong protection from ~15vDc spikes (automotive) and I would like to have some room to grow for redesigns, both on the board and with I/Os. I don't know if this factors in, but I'd like a case enclosure with an external (to the PCB) reset button and a way to update the code via Bluetooth.

I'm a little leery of doing this solo, however I have no idea what this would cost to have someone do, nor a good way to vet them if the interaction is online. I also would like to fast track this, which is why I'm open to hiring someone if the cost isn't astronomical. I'm inexperienced and I know that, so it would be nice to learn from someone experienced rather than trial and error, or at least some sort of 'white glove' service for my first attempt. I've seen services on Fiverr for PCB design, has anyone used those? Or can someone else be recommended once I get a block diagram done in EasyEda?

  • Atmega1284p is a 328 on steroids, recommend using it.

The cost is shown right before you pay, they calculate all costs.
You can get in the site and do a few dummy runs to educate yourself.

I rather think it is common experience in Arduinoland to run out of memory before you run out of pins, hence a common move to a Mega. I don't see what is so frightening about using a Mega, after all, you already have one, and I assume it works, so what's stopping you from keeping it?

I don't think you have really thought through what you really need. This particularly applies to the physical components and their juxtaposition. I suspect you might find a custom shield is all you need.

There are a bunch of chips in between the Uno and the Mega WRT memory and even pin counts. The ATmega1284 is a good choice, but it's getting a bit ... old.
These days, I might look at an AVR128DA48 or AVR128DA64 (depending on how many pins you DO need.) About 1/5the price of an ATmega2560, too.

I'm open to using any Atmel uC that will work well, at this point. I've built a handful of breadboard projects, but have never had the courage to convert them to a PCB and finally want to see that through all of the way with this project.

I don't want to deviate from the Atmel at this point, adhering to the KISS method, since I'm already using the Mega.

Copy an open source schematic.
Use fat tracks, dont go for ultra thin ones. Vcc and GND should be fat, 1mm is OK.
Place caps on VCC near any chip ( 1u or similar).
Start always placing connectors. They should be easy to access and connect/disconnect.
Think about the casing, large/width/height if you have already chosen one.
Think about placing test points.
Place all components on same side if possible.
Robert Feranec has great tutorials about this on youtube.

1 Like