Options for holding project parts?

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
goblynn93
 
Posts: 6
Joined: Mon Jan 13, 2014 3:04 pm

Options for holding project parts?

Post by goblynn93 »

Looking for something like a camera cheeseboard that can hold various project parts in place. Looking for something that can hold breadboards and PCBs of varying shapes and sizes...

I'm getting real tired of having to rebuild everything just cause I tried to attach a new part and everything pulled and shifted and now it's all broken. There has to be a project board (not looking for the breadboard trays, I see those all over the place) that can hold all this stuff for me...

Any suggestions?

User avatar
barshatriplee
 
Posts: 200
Joined: Wed Mar 22, 2023 10:11 am

Re: Options for holding project parts?

Post by barshatriplee »

The nearest thing I can think of is sparkfun's Arduino and breadboard holder.

User avatar
adafruit_support_bill
 
Posts: 88091
Joined: Sat Feb 07, 2009 10:11 am

Re: Options for holding project parts?

Post by adafruit_support_bill »

Double-sided foam tape is good for holding pcbs in place. It has a firm grip, but can be peeled off when needed. You can find it in rolls as well as in pre-cut dots or squares.

Hot-glue can also work for temporarily holding irregularly shaped pieces.

User avatar
michaelmeissner
 
Posts: 1821
Joined: Wed Aug 29, 2012 12:40 am

Re: Options for holding project parts?

Post by michaelmeissner »

Besides double stick tape and/or hot glue, if your parts are all breadboard based, many of the breadboards have little notches in them so that you can attach them side by side or end to end. You would have to use the same breadboard for each part so they fit together. I like the small 170 point breadboards for this (17 columns with 2 sets of 5 rows). If you search around you can often find them in 6-12 packs:
If you use the feather system, you can stack the components into featherwings. With each featherwing you solder stacking headers to it so you can stack the boards. You can also use the doubler, tripler, and quad prototype boards to bring out the boards horizontally. Similarly for classic Arduino boards you can stack shields and such.

If you aren't using feather or Arduino shields, you could do the same thing with perma-proto boards. Establish the layout of your microprocessor in the perma-proto, typically with the microprocessor at one end, or maybe in the middle. Solder stacking headers for those pins, and attach your components to the left over space in each perma-proto board, attaching wires to connect to your boards pins to the components.

One thing I often do is layout perma-proto or breadboards so each set of functions is brought out in a consistant fashion. For example, I lay out SPI connections as ground, power, SCLK, MOSI, MISO, CS, DC, Reset, CS-B, and Blink. Then for each SPI board such as displays, I buld a custom DIY cable setup that plugs into my standard layout:
Usually I will solder a female header (either straight or right angle) on the device, and make a double ended male to male wire wire setup to connect the device to the perma-proto or breadboard. If I'm using a perma-proto, I will then solder a female header in the layout chosen. If I'm using a breadboard, I will custom cut solid core wire going from the microprocessor to the headers to keep the board more tidy.

If I have a larger prototype board, I might solder the default connections for my preferred layout to one set of columns, and then solder in toggle switches to the columns across the board. I will solder in multiple female headers on the other side in the standard layout. This way, I can use the standard wiring normally, but if I want to experiment with different CS/Reset/etc. pins, I can change it easily via turning off the toggle switch, and using a jumper wire. If I was using a breadboard, I would just cut a new custom wire to do the connection.

In setting up each of the connections, I will use a different wire color for each pin. For SPI I currently use:
  • Ground: black
  • Power: red
  • SCLK: green
  • MOSI: purple
  • MISO: gray
  • CS: yellow
  • DC: brown
  • Reset: blue
  • CS-B: white
  • Blink (or VIN for other things needing higher power): Orange
Now with only 10 colors you have to double up, but at least in looking at the board and with the wire setups, it is helpful if you use a consistent color.

For SPI and I2S layouts, I often have a separate 3 pin area that has 3.3v and VIN/5v on two sides, and a toggle switch between these that hooks into the SPI or I2S power setup. This way I can easily switch between 3.3v and 5v for the displays and sound systems.

If you are using I2C, it may be useful to switch to the Stemma QT/Qwiic cables which have a consistent layout.

For neopixels, there is no standard cabling, as Adafruit has something like 3-4 different ways of cabling neopixels (plus many neopixels that don't have cables). So like for the SPI displays, I often build converter cables. Over time, I have settled into using ground, power, and data for the neopixel layout.

I do tend to layout neopixels so that I have the 3 pins using 3.3v power, and I have a separate layout that uses VIN/5v and a level shifter. This way I can experiment to see if a particular neopixel board can be used with 3.3v power or if it needs 5v power (this assumes I'm only doing a few neopixels that can be powered with the microprocessors 3.3v converter).

In my latest board design (I haven't soldered it yet), I have neopixels/pwm grouped in 2 sets as ground, power, data1, data2, power, ground. This way I can use 2 different neopixels/pwm wires, or I can use 4 wires to connect to dotstars.

By using consistent cables I can quickly switch from one setup to another. For uncanny eyes, I have 4 different displays (128x128 square TFT with ST7735 chip, 128x128 square OLED with SSD1351 chip, 240x240 square IPS with ST7789 chip, and 240x240 round IPS with GC9A01A chip) that I might go between. For uncanny eye setups, I bring out 2 separate SPI layouts for Teensy 4.0/4.1, but also I have the first SPI layout setup so I can plug two eyes into one SPI bus (in this case, using a second custom cable that hooks up to CS-B instead of CS-A).

My over the top board currently has:
  • Main layout for Teensy 4.1 (and 4.0/3.6/3.5/3.2/LC with some limitations).
  • Secondary set of 14x2 pins for attaching an audio shield if the Teensy doesn't have a stacking header.
  • Two SPI layouts, the first SPI is setup to use the special Teensy 3.2/3.5/3.6 fast CS pins for CS, CS-B, and DC. The 5 data pins of the first SPI can be switched with a toggle switch, while the 5 data pins + MISO can be switched on the second SPI (the Teensy 4.1 has two pins that can be used for MISO1, the Teensy 4.0 only has one pin that overlaps with Serial1). The power can be switched between 3.3v and VIN/5v.
  • 2 sets of Neopixel/PWM pins using a 74AHCT125 level shifter.
  • All 4 neopixel/pwm pins with 3.3v (but I don't have the space to do the back to back layout for dotstars).
  • Serial1, Serial3, and Serial7 layouts (Serial7 can be switched with toggle switches, Serial1/Serial3 don't have toggle switches. Note Serial1 overlaps with the default pins for SPI1, and Serial3 overlaps with the default neopixel and potentiometer pins. For Teensy 3.2/3.5/3.6 only Serial1 can be used without jumper switches due to different pin layouts in the Teensy for the serial connections).
  • 3 sets of pins wired as ground, data, and 3.3v for hooking up potentiometers, All 3 data pins have toggle switches to change the default. Only the Teensy 4.1 can use the 3rd potentiometer with default pinout.
  • 6 LEDs that I can use a jumper wire to display lights.
  • 1 push button, 2 toggle switches with default layout that can be changed via toggle switch.
  • 3 additional push buttons that can be hooked up via jumper cables. For the Teensy 4.0/4.1 I would anticipate hooking up the Program and On/off pins via jumper cable.
  • Pinouts for both I2S and I2S1 Power can be switched between 3.3v and VIN/5v.
  • Pinouts for I2C, including an extra pin to be used with jumper cable for raising an interrupt if the I2C devices want to signal something. The I2C header is set up to be ground, 3.3v, SDA, and SCL so that I can attach the Sparkfun QWIIC adapter to use Stemma QT/QWIIC pins.
  • A set of 5 pins that I can use jumper cables to build an 8 pin setup (ground, 3.3v, 5 data pins, VIN).
However, while I've designed it (using a spreadsheet), I haven't started soldering it yet.

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: Options for holding project parts?

Post by adafruit_support_mike »

Protoboard is probably the closest thing to a cheeseboard:

https://www.adafruit.com/product/4783

Soldering component leads into the holes is only a beginning.. you can add mechanical connections by soldering in brass nuts and bolts, and the potential uses of brass wire are only limited by your imagination.

User avatar
goblynn93
 
Posts: 6
Joined: Mon Jan 13, 2014 3:04 pm

Re: Options for holding project parts?

Post by goblynn93 »

I appreciate all the replies!

What I've ended up doing was utilizing the holes that come in most PCB and attached hex standoffs to them. M3 and M2.5 standoffs seem to fit everything I've got. Just have to be careful about crushing or knocking offThen I've got some 3mm MDF and I drill holes and attach the parts to that. I can even peel and stick breadboards to it. I've even cut a little stand to hold the MDF vertical and I can use both sides.

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”