Laying out parts Protoshields

Guys,
Im new to this and so far have enjoyed the learning process.

Im now trying to take my project from the breadboard to a protoshield so I can install it and move onto the next project:)

My question is how do decide where to put all the components so as to a) make everything fit and b) make the wiring easier and less like spaghetti??

My simple project is based on a Mega 2560 and uses the following components:

  • GPS (with an external antenna)
  • Temp/Pressure/Humidity sensor
  • Thermocouple amplifier
  • 2 x bi-directional level shifters
  • 5V regulator
  • 3.3V regulator
  • SD Card holder
  • PC817 Optocoupler
  • enclosure mounted push button switch
  • Nokia 5110 display
  • a few resistors, a led on the enclosure and a few screw-down terminals

I have attached a picture of my current breadboard in case it helps describe my problem.

At the moment and after simply laying things out and physically moving things around Im thinking I may well need 2 photo shields stacked onto of each other and mount the display on a ribbon cable to the enclosure, but Im sure this would leave a lot of unused space.

Id like to get it down to one shield and the screen on a ribbon if possible.

Thoughts & experience welcomed!

Thanks
Jon

You could always design your own PCB or hire someone to do it for you. Cadsoft's Eagle is free and lots of tutorials online. Other than that, it's pretty much an art form for laying out your devices to be as small as possible.

Proto shields are a good idea but they rapidly get messy and difficult to modify. Try to put logically-related components onto one shield. For example, think about making a "datalogger" shield with your SD card holder and only a few other components, like maybe the GPS. Then that's a useful building block for many projects.

Layout on proto boards should start from the problem of access - the SD card needs to face an edge of the board so the card can be removed. Thermocouples need to be plugged in. The LCD display and buttons need to go on the top-most shield in the stack. Don't forget that you can stack components on the bottom of the board, so they hang down between the Arduino headers - but look out for the ICSP pins and the USB port on the Arduino below.

You really should put some time into learning Eagle and using a commercial service to make PCBs for you. I don't use protoboards any more because the time spent debugging a board is sometimes more than the time waiting for a custom PCB to arrive.

Don't jump in too deep with your first custom board. Try to make something useful like the above "datalogger" without cramming every single thing onto that first experiment. You are going to make a mistake and you don't want lots of expensive components permanently soldered to the mistake. As you learn and gain confidence, your designs can be more complex.