cancel
Showing results for 
Search instead for 
Did you mean: 

Off Topic: How do you prototype?

john doe
Lead
Posted on December 02, 2017 at 23:54

After a hard day at work, I come home, crack open a beer, start dinner, and play with my micro controllers.  I am the very definition of a bit fumbling amateur.  This counts as fun for me.

So I'm building a clock radio that sets the time by itself, and is AM/FM/Long wave/Short wave/Weather band with RDBS decoding and SAME decoding [turns out to be a rather ambitious first project] and I'm making great headway.  I've learned to read a data sheet and implement what it is telling me so I can talk to chips and get coherent responses in return.  Yay!

I've worked on this project in different pieces, and prototyping using a breadboard and [I learned the hard way to use the good] DuPont wires.  I find that during debugging, often times, the wiring and the breadboard is the problem, not the hardware or the code.   How do you guys prototype anything more complicated than one peripheral and one chip?  The professionals here can't seriously be breadboarding like me...can you??

0690X00000604INQAY.jpg

This is just the radio stuff.  The clock stuff is on another board.  If I even look at the board funny, the I2C goes south on me.  How do the pros do it?

7 REPLIES 7
Posted on December 03, 2017 at 02:00

This was the spider I created with a 1W LoRa module on to a Nucleo via an Arduino proto shield PCB and a bunch of soldered headers and a couple of bags of jumper cables from Fry's

0690X00000604J1QAI.jpg

When I was young I had an auto-strip-wrap gun which was very efficient and wire wrapped everything. Built several single board computers from 40-pin DIP chips and SRAMs and EPROMs.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Posted on December 03, 2017 at 02:10

ok then, i guess my follow-up question is then, how do i go from stupid breadboarded spaghetti?  I guess the next step in learning is starting to make my own boards, perhaps?  

Posted on December 03, 2017 at 02:21

I don't tend to breadboard in the fashion you do, never have. Usually pull together several boards and mash things together for a proof of concept, or to understand a chip, and then commit to a board. Often the size of the stuff I'm working with doesn't lend itself to hand prototyping, and the scale, proximity, and physical geometry of the circuit are as important as the connectivity.

The cost of grabbing parts/boards on eBay makes things a lot simpler, so if something replicates 80-90% of what I want to achieve it's easy to hack/graft the 10-20% on than go the other way.

Soldering and wire-wrap work well for me, so the circuit is not prone to fail if it gets knocked on the desk, or I look at it askew.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Posted on December 03, 2017 at 07:36

Curious to make a quick survey:

Who and how often prototypers use stacked Arduino Shields (2 or more) ?

Is jumper wire used because soldering is to be avoided?

What are the MCU GPIO functions typically needed when prototyping (USART, SPI, ADC....) ?

Thanks!

Posted on December 03, 2017 at 16:26

The spider above maps directly to the SEMTECH LoRa shield configuration, with the addition of RXEN and TXEN unique pins, there are a lot of GPIO and an SPI connection, while the USART and I2S can feed through. I can stack this with a GPS board to do tracking, or range computation. The latter being good for generating charts and graphs from the outset to make a case to management, or constrain sales from making unreasonable claims or promises. Emulating an existing shield also allows for simple porting with a couple of defines.

I find the shield a good way to add things with enough pins and solid/robust mechanical connectivity, and I tend to favour STM32 boards that have the interface, ie the NUCLEO, Newer DISCO, etc. The key problem I encounter with Arduino shields is the lack of consistency and flexibility in pin utilization. For example ST doesn't support the ISP header which a lot of people use for SPI now, other boards support V3 while some don't have the additional pins. Several occasions where I have bent pins or cut the off to accommodate stacking, or feed external power, etc. Getting a stack of more that two boards will give diminishing options.

The STM32 AF pin mux is also limiting, some times it is very hard to map USART functionality to desired pins, with desired TX/RX orientation. ST missed a trick here in the silicon implementation to balance signal speed and fan out against open slots in the mux. Every DISCO board has it's own unique pin mapping, the NUCLEO-64 shared USART pins with VCP, etc. Google is good for finding quick infographics on the pin designations.

The Mikroe Clik boards are also things I've used, so the STMod connector and translation board that came with the STM32L4R9-DISCO is something I'd put to use.

I've worked with people who've built first generation products using board stacks, if the market is provable it can fund a board spin to integrate. Having a solid prototype or proof-of-concept can help sell an idea, and provide additional engineers with resources to develop their portion of the solution. Breadboards are good on the lab bench, but less convincing in the board room, ie have them imagine all this on one board, or within one chip, while handing the PoC around and inspecting it.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Posted on December 03, 2017 at 16:51

If this is a hobby-fun project, going further would be to make small series transportable in a DHL box...

This requires HW PCB design skills: schematic, layout to make an Arduino shield or STmod+ or Click board.

Your guess seems right. Jumper wire method is very quick to validate a functionality, as long as signal integrity allows it. The STMod+ Fan Out board I've seen on some discovery board reduces the spaghettis and seems to enable you to swap nucleos without disturbing the wire construction: A compromise between full jumper wires and PCB making which requires HW design skills.

Posted on December 03, 2017 at 21:20

Connecting demoboards together is a good way, if there is a demoboard available with a reasonable price. But if you can design a pcb board, you order one from China for 20€$£