3

My prototype contains below components:

I think It's OK on paper (and presumably on a breadboard too). I'm trying to wrap my head around on how to convert it to a finished product that sits inside a plastic box.

What are my options?

For instance, can I create a single PCB that contains all the components? If not, how can I connect these multiple break-out boards together? Is soldering some wires on both boards to connect them is a viable option?

Edit:

My ultimate goal is to create a product that is for sale. So I mean something that can be mass-produced and can meet regulatory requirements.

This is why I was thinking about a single PCB. Arduino (or should I say ATMegaXXX?) is fairly simple to place on a custom PCB. So I was thinking perhaps I could "re-create" my break-outs (see above) on this PCB thus creating a single piece including all components and the microcontroller. For some reason this makes sense to me but I don't know how hard it is or if it is even possible.

  • 1
    Chances are you can drop the ATmega and run it all on an nrf51822, so you only need the rf matching components, crystals, caps and ferrites, accelerometer, sd socket, and supply. – Chris Stratton Jan 3 '15 at 3:37
3

First, you should read this this question here.

The reasonable answer here varies a lot depending on how involved you want to get, and what volumes you want to sell at.

Fortunately, you're not using any breakouts with truly exotic parts. The nRF8001 is just a QFN part, which can be soldered by hand without too much trouble.

Speaking loosely, the process would look like this:

  1. Design a PCB layout that contains everything.
  2. (Optional) - Figure out if you want to put it in a enclosure of some sort.
  3. (Optional) - Determine how you're going to have the enclosures produced or modified from an existing product. You can have a contract machine-shop do the work, but again, $$$$.
  4. Send out to have PCB prototypes manufactured. I like OSHPark, but there are LOTS of options.
  5. Assemble your boards.
  6. Find out your prototype doesn't work.
  7. Go back to step 1 (expect this to happen a few times)
  8. Rent/Beg/Borrow some equipment to do EMC pre-qualification testing (for FCC).
  9. Realize you have an EMC disaster.
  10. Respin boards a few more times (e.g. go back to 1 again) to fix the pre-qualification EMC issues.
  11. Feel like you have a decent layout, have it FCC tested.
  12. Pay $10K+ for FCC testing.
  13. If you're lucky, you passed, you now have a proper, FCC certified product.
  14. Nope, go back to 1 again if you failed.
  15. Do lot assembly, either manually (major time investment), or contract out (expensive!).

  16. Sell your widget!

Note that you can contract out the prototype assembly, but doing so is expensive, even if you do it in china. The magic (or cursed, really) term here is "NRE", or non-reoccurring expenses/engineering. Colloquially, it's the "setup cost" of doing a production run. Sure, you may only pay $5-50 per-widget to have them assembled, but there will be a $1000+ base charge. This reflects the fact that the primary time-cost on the part of an assembly house to build your widget is setting up the production line, working up and debugging a pick-and-place routine, building test-setups, etc... Once everything is up and running, the actual per-unit cost is fairly marginal.

This is also why commercial electronic devices can be so cheap. They're made in truly enormous volumes, and that lets the companies amortize the NREs across the entire production run. NREs are basically the bane of any small electronics business. They're also basically the reason specialty widgets are so expensive. Places like spark-fun can get away with fairly cheap products because they have their own complete assembly line in-house, and even there, you're often paying 4X+ the cost of parts for just the IC on a PCB with a few cents worth of passives.

Since you seem to be new to PCB design, this is possibly not a great first project. It's doable, but expect it to cost 4X+ what you expect, and take 2X+ the time you planned. There are a LOT of facets to designing a proper product, and they each contain an entire field.

It'd probably be better off to start out with some simpler boards, maybe a through-hole-only arduino clone, or similar (though SOIC can be soldered without a hot-air station or anything).


Some assumptions I'm making:

  • If you're serious, you will have to lean SMT assembly practices. Through-hole only is not a viable stance anymore.
  • Expect to buy a lot of tools, and burn a lot of money in failed prototypes.
  • Expect 3 board revisions. At minimum, before you have something you can get tested. I could maybe do it in 2, if I got really, really lucky, but I doubt that would happen, and this sort of thing is my day-job.

Hardware is HARD, and worse, it's completely unforgiving. If you're coming from a software engineering background, you basically have to discard all your assumptions, as they will actively hurt you.

Imagine a software project where "compiling" can take 4 weeks. That's hardware development.

  • You'are right, I'm totally new to PCB design (I've never done it before) and I'm 99.9% a software engineer. I think your opinion on how hard Hardware is absolutely right. Fail and learn cycle can be extremely long compared to Software and all those "guides" and "tutorials" on the internet will take you nowhere but blinking LEDs all day like a crazy person. Also, since I'm currently located in Bahrain, multiply that 4 weeks with 2 or 3. – frbry Jan 3 '15 at 11:12
  • @frbry - I'm not trying to discourage you, hardware design can be tremendously rewarding and fascinating. However, it brings a whole suite of challenges with it, and you should make sure you know what you're getting into before spending a lot of money on prototypes, etc... – Connor Wolf Jan 3 '15 at 11:15
0

By "product", do you mean for sale? Giveaways to friends? One for yourself? How many do you expect to make? It isn't (monetarily) worth creating a board for one or five pieces unless you want to for reasons of aesthetics, reliability, demonstrating your skills to a potential employer, etc. OTOH, if you sell a product, it will to meet regulatory requirements in the jurisdiction(s) in which you intend to sell it. So the - admittedly unsatisfying - answer is: it depends. :) (In other words, we need more information).

Chinese board houses advertise they can do small runs for quite reasonable prices, but expect to spin the board several times unless it's a pretty simple one. Not dissing their abilities or skills as I have no experience with any of them, but as a practical matter of communicating exactly what you want, the first time, to a business half a planet away, a business you might not be familar with yet, and someone with whom you might not share a native language. Even with those obstacles out of the way, boards can take several- to many spins to get to a first production revision.

For a small handful of boards (depending the size of a "handful"), hand-wiring on hobby PCBs or strip-boards can be effective and not too expensive.

  • Hi, thanks for your response! I've updated the question with some additional information. – frbry Jan 1 '15 at 22:44
  • Adafruit's breakouts are great at making available to experimenters, devices that would be too difficult for most of us to build with. If you're intending to hand-build your boards, soldering surface-mount devices might be a show stopper; if so, breakout boards would be key. But if the numbers warrant, you'd probably contract out the boards, with the bare devices on them. If you're going for regulatory approvals, that's almost a requirement, just to limit the number of things that could prevent your device from passing. – JRobert Jan 2 '15 at 0:50
  • Could you please elaborate more on how I can contract out the boards and what the bare devices mean? :) – frbry Jan 2 '15 at 9:07
  • By bare devices, I meant using the ICs directly on your PCB, i.e., without a breakout board. It will be cheaper, smaller, and won't have a bunch of off-board wires to radiate garbage that will prevent your device passing certification. For board fabricators, LadyAda reviews a few of them; a quick search will turn up many, many more. – JRobert Jan 2 '15 at 21:44
0

step1: Make the hardware

  • Refer the schematics of arduino you are using and make your own pcb

  • Approach any PCB manufactures and deliver them your GERBER files with correct Bill of Materials.

  • You can easily make a single PCB. consider PCB with components on both sides, and multi stackable PCB only if the dimension of required PCB matters.
  • Try not to place nRF antenna and crystal for the micro controller close to each other.

Step2: Firmware

This step is about getting .hex file from arduino code and givin this to the same pcb manufacturer, with proper fuse values

  • Go to file->preferences in arduino
  • Check show verbos
  • open the temp file (type %temp% on RUN)
  • Compile your arduino code. this will generate a build folder inside temp folder Search for yourArduinoProjectName.hex inside that folder.

This is the code you need to get fuse bits

#include <avr/boot.h>;
void setup() { Serial.begin(57600);

cli();
uint8_t lowBits      = boot_lock_fuse_bits_get(GET_LOW_FUSE_BITS);
uint8_t highBits     = boot_lock_fuse_bits_get(GET_HIGH_FUSE_BITS);
uint8_t extendedBits = boot_lock_fuse_bits_get(GET_EXTENDED_FUSE_BITS);
uint8_t lockBits     = boot_lock_fuse_bits_get(GET_LOCK_BITS);
sei();

Serial.print("Low:  0x");
Serial.println(lowBits, HEX);
Serial.print("High: 0x");
Serial.println(highBits, HEX);
Serial.print("Ext:  0x");
Serial.println(extendedBits, HEX);
Serial.print("Lock: 0x");
Serial.println(lockBits, HEX);    }
void loop() { }

Or check the file

C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt

to find the fuses.

-1

Single PCB is not viable, as some chips are near impossible to solder by hand. Also, you'd have to get your PCB checked for FCC compliance (because of the bluetooth), which you don't want.

You could design a PCB that contains the Arduino micro controller (ATMega328), and that all the other board plug into.

Wires could also be a solution, by you probably need to find a way to securely mount all the boards inside the enclosure (no rattling).

PS I'd suggest something like an Arduino Nano as it's smaller, and you can remove the header pins and solder wires directly to PCB.

  • Hi Gerben, why don't I want my PCB to be checked by FCC? Isn't it the standard procedure? Probably a newbie question, which I definitely am. – frbry Jan 1 '15 at 22:46
  • It would cost a huge amounts of money. Also, if something isn't okay, you'd have to have it rechecked, costing more money. – Gerben Jan 2 '15 at 16:19
  • 2
    I don't see a single chip anywhere on those eval boards that's even that challenging to solder. Furthermore, if you're designing your own PCB, not just using a plain ATmega328P is just violently silly. Why pay all that money for the Arduino people to do a little soldering for you? – Connor Wolf Jan 3 '15 at 2:26
  • A $100 hot air station will save a lot of aggravation when playing with QFN. If that is considered a big ticket investment the project is implausible. – Chris Stratton Jan 3 '15 at 4:10

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.