Slashdot Mirror


Turning an Arduino Project Into a Prototype

An anonymous reader writes: Those of us who fiddle with electronics are probably familiar with this scenario: you've just finished assembling a project using your Arduino/Raspberry Pi/whatever, and it works! You'd like to set it up for long-term use, but... it's just a mass of wires and LEDs and switches. Alexis Matelin has written up a brief but handy guide for turning that mess into a self-contained prototype. He goes from planning out your circuit to designing your schematic to making your board, then working on an enclosure and a battery holder. Matelin also links to a variety of resources for the individual steps involved. It's a straightforward guide written for amateurs. Those of you who have experience with building permanent micro-controller projects: what would you add?

3 of 107 comments (clear)

  1. Make sure your project is ready for the real world by gsliepen · · Score: 4, Informative

    Make sure the silkscreen contains enough information so that populating the PCBs is as free from errors as possible.
    If you are using polarized components (diodes, electrolytic caps, etc.), it helps if all components are oriented in the same way.
    If not, make sure it is properly marked on the PCB.

    Even if the prototype works fine, spend some time hardening your project for possible problems. Add diodes to protect against accidental reverse polarity connections. Your final design will probably run for much longer than your prototype ever did, so make sure it doesn't get too hot, and that everything is well within the maximum ratings of the components. Not every power supply is the same, add a capacitor and/or line regulator to the input. Maybe some components can be put into a socket instead of directly soldered on board. LEDs are cheap, add some to provide diagnostics.
    Make it easy for an end-user to reprogram the Arduino/Rasperry/whatever.

  2. Re:My comments by geoskd · · Score: 4, Informative

    If your time is expensive and you will only be running a very small number of PCBs, consider using ExpressPCB's design tool, because it's easy to learn and it seamlessly connects to their board printing service. (Their service is expensive though, so this is only good if you're doing a few boards, and thus the labor you save will not be eaten up by the extra you pay per board.)

    Do not use any of the express layout tools if you are handling a CPU. The layout will not work on the first try, and you will have to modify it. Doing this with a schematic is relatively straightforward, and spotting faults is easy. Doing the same from a layout is obscenely difficult and prone to failure. You want to use a schematic capture / PCB layout combination tool such as kicad, eagle or gEda to name a few. The ability to check your layout against a schematic is invaluable, and will save you huge amounts of time.

    --
    I wish I had a good sig, but all the good ones are copyrighted
  3. CPU by geoskd · · Score: 4, Insightful

    The original article talked about laying out your design with a microprocessor. Several things should be noted:

    First, don't roll your own PCB with a microcontroller on it unless you know what you're doing. This is an involved process and not for newbies. You will need expensive lab equipment to debug even the simplest problems, and it is best to sidestep the problem if at all possible. Consider instead simply incorporating an arduino / Pi / Beaglebone into the actual product and do it that way instead. If the margins are low enough to make this impractical, and you don't have any experience designing microcontroller systems, then I would humbly suggest you are out of your depth, and the profit margins are probably too low for you to make money selling your product.

    Second, take a serious look at your design tools. there are plenty of free tools out there that do an excellent job. Eagle and gEda come to mind. Both are free, and both will handle just about any job that an amateur is trying to accomplish. Eagle is primarily windows, and gEda is Linux only. The key part is that you want to design your system as a schematic, then export to the PCB layout. That way the tools will automatically check your PCB layout for errors such as short circuits, disconnected circuit, and a whole host of other problems that the free prototype tools don't handle. Put another way, if you get lucky on your first shot and the layout is perfect, then any tool will do. If you make a tiny mistake somewhere in your layout, then the expressPCB, etc tools will not catch it and your boards will not work. The schematic capture tools will catch the fault, and will save you massive amounts of trouble.

    Be prepared for new debugging tools. Debugging a problem with the arduino or Pi is something you probably already know how to do. Debugging an embedded microcontroller is a whole other world. Even if the hardware is 100%, debugging software is trickier. Do your homework and be prepared for a radical departure from what you’re used to.

    --
    I wish I had a good sig, but all the good ones are copyrighted