8

I've been reading a bit about moving from Arduino to PCB and it seems a bit daunting. For now, all I really want to do is take something I've built, and make a few changes so that I can actually create a casing for it and make sure everything stays connected.

I've attached a photo of my project. What I am trying to do is create a box, where 4 pushbuttons sit in a box, with LEDs next to them. I will probably create foamboard cutouts for the spaces where the pushbuttons and leds sit. The wiring for the push buttons and the LEDs need to be hidden below the foam board, along with the arduino itself and the servo motor - which is where I get stuck.

What do I need to do to essentially "lengthen" the wires for the pushbuttons and LEDs, and make sure all the components stay secure in the breadboard (the push buttons in particular like to pop out)? Is there a way to do this without making a PCB? I understand the concept of soldering components into protoboard, but as far as cutting / printing the circuits or whatever, it is really confusing to me.

I'd appreciate any guidance. If you see anything wrong with my wiring setup too, I'd love a learning experience on that as well. Thanks!

enter image description here

enter image description here

  • How did you draw the bottom diagram? – Andrei Dec 18 '17 at 14:07
10

The best thing to do is, of course, to use a PCB. But it doesn't need to be a custom PCB; there are plenty of pre-made PCBs that are usable for approximately 98% of designs. Here are just a few:

For switches just use a panel mount form. They come in everything from simple to robust to ridiculous.

LEDs can also be panel mount, or you can use a light pipe to make a LED on the PCB visible from the outside.

For power you can use a USB connection or a separate power jack with a voltage regulator. If you also need a serial connection then you should consider a pre-made serial module, and either use its built-in USB jack or a separate panel mount USB jack.

The servo can be mounted inside the case if appropriate, or can be connected to a PCB mount or panel mount connector instead.

Naturally the MCU itself should also be placed in a socket directly on the PCB. Don't forget the decoupling, the oscillator, and the ISP connector.

As for the circuit itself, you can get rid of the pullup resistors on the switches if you use internal pullups instead. And 100ohm is way too low a value for switch pullups regardless.

  • Thanks - this was super helpful! For the resistors - I'm using 1000 ohms - is that still too low? What do you recommend? As far as sort of extending all the wires and push buttons, would it be reasonable just to solder some wire to headers which I plug directly in to the arduino? – mheavers Dec 27 '14 at 14:19
  • I'm fairly sure the third band is brown, but they're in front of you so you'd know better. But as I said, use the internal pullup. I strongly recommend not using the Arduino and instead using the bare AVR, but soldering or crimping pins onto a wire should work, at reduced reliability (excessive G-forces will pull them loose). – Ignacio Vazquez-Abrams Dec 27 '14 at 14:38
  • Thanks! If anyone stumbles across this - there's a good description of how to use internal pullups (and understand pullups) here: learn.sparkfun.com/tutorials/pull-up-resistors – mheavers Dec 27 '14 at 15:00
4

Learning to design a PCB can be a challenge. First, there's software choices, there's file formats, and then actually laying out a good board. That's before production and assembly, each with its own struggles along the way. It's no different than the first time you open Xcode and learn about Storyboards and Frameworks and Simulators and all that, or for that matter, learning any new skill, which at first is a daunting experience but through both setbacks and success eventually becomes easy.

So, I agree with everyone that suggests perfboards and variants. But I also want to show, as perhaps motivation, where you could be in a few months. I tend to see Arduinos as the development tool, not the final product, but I understand others are content to just use a standalone Nano or Pro Mini and forever dedicate it to their project.

These are three variants of the same device, it combines an Arduino/ATMega, a GPS, a serial port, and an RGB LCD. I first created it in on a breadboard, then moved to a perfboard, thought "that is ugly" and made a simple PCB. Pleased with that experience, I kept refining the schematic and layout until I finally called the project "done."

perfboard project primitive PCB Final PCB

You also might consider making tiny PCBs just for specific components, like these two boards I make for buttons and lights.

hardware switch denouncer and LED breakout boards

The very first PCB I ordered from OSHPark was an amazing experience, opening the envelope and holding it like some religious relic. But since then it's become routine. If you do later go the PCB route, you might appreciate my summary of low-volume shops I've ordered from.

3

Using a stripboard is perfectly convenient to create a circuit that:

  • will last longer than a breadboard prototype
  • will cost less than wasting a breadboard for a long time

Stripboards can be found in any good electronics retailer (I buy mines at Conrad).

You will need a soldering iron (and the skills that are needed for it, but that is not so difficult as some people think).

You could even go one step further and create an Arduino on the same stripboard (many components from the UNO are not required for a circuit you want to build and keep "forever").

Another option, just a little bit more expensive, would consist in affording a prototype shield for Arduino, solder you circuit onto it and directly plug it onto your Arduino. The principles are the same as for a stripboard, except the prototype are has typically no strip, only holes on which you can solder components and wires.

2

You can use Arduino proto shield. It's a prototyping board shaped the way it can be plugged into the Arduino. There are over 9000 of them from different manufacturers. Then just solder the stuff you need on the proto shield.

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.