Guidance needed re:hardware development of STM32F4 .NET board

I have a need for a digital I/O only solution, so I created one. I started with my first board (https://www.ghielectronics.com/community/creations/entry/16), took out the Cerb40 and moved the MCU and supporting hardware to the main board, along with some Darlington arrays for sink output and resistor arrays on the inputs. I believe the design is functional, at least on paper/CRT.

My first question is, what are my requirements as far as licensing? Since this is close to the Cerb40, which I used for “inspiration”, must I now open source the hardware? As for code, I’ve published most of it already in codeshare.

Second, I consider this to be more of a “daughter” board than as a main board. In the Gadgeteer realm, I envision it more as a smart module. I plan to create an adapter to allow gadgeteer connection via a U socket, while my primary target audience will use a Prolific USB to Serial cable for communication/control from a PC. Since my USB and my U socket are essentially the same (the USB solution additionally provides reset, loader, and battery lines), aside from 3.2mm mounting holes at 5cm, do I have to do more for Gadgeteer compatibility?

Third, and this is where I reach out to the hardware oriented side of the community, how do I debug this thing? My prototype boards came in (finally!) and I immediately started soldering components. After soldering the last one, I gave it one final once over, plug it in, and just as I expected, nothing happened. Ok, so maybe I expected perhaps a little bit of magic smoke, or [em]something[/em]. Now my lack of experience shines bright. I’m getting 5V in and 3V3 out at the voltage regulator. That’s about it. I don’t have precision probes for my meter, so I can’t really probe the MCU pins. I have boards and components for 9 more prototypes, so I have no problem doing it over. What are the “best practices” in putting together something like this?

Thanks all for reading, and thanks in advance for any help. Should I break this into three posts?

So my first suggestion is going to be somewhat hard for you to actually do on the one you assembled, but not on the 2nd one :slight_smile: .

When debugging at a hardware level, I’d start simple. Solder the processor and the minimum requirement of supporting devices. So that means input power and regulation, crystal and capacitors, and not much else. Then see if you can power it up. Unfortunately the next thing you might need to do if you don’t know what should happen is to probe the crystal to check it’s oscillating, and will require an oscilloscope to check properly (a logic analyser may work). Then the next thing I’d want to solder on is USB connector so you can check what, if anything, is visible when the device powers up (should at least see the bootloader). If you don’t get to a usb device showing, something is not working as expected. Then, go slowly through adding more and more of the supporting peripherals and make sure things still work.

To troubleshoot the existing one, it might be worth taking lots of continuity measurements between solder joints to see if you can identify whether there’s an unexpected solder bridge or misaligned connector bridging out pins. A regular set of multimeter pins can be used safely there with the board powered down and steady hands :slight_smile:

Sounds like a sensible plan! I had simply started with the smallest components first, working my way up in size and complexity. Worked well for ease of construction, but not much else. Thanks for the advice!

Does anything show in device manager with the boot pin shorted?

Upload a schematic for a 2nd opinion?

@ BillGates - Nope, no recognition from the PC side. Unfortunately, I don’t have a schematic (gasp!). I created this using Pad2Pad, which is a free, but proprietary software. Converting it to Gerbers was not trivial; probably should have just learned Eagle.

@ Gregg - Can you point to PA11 and PA12 pins (USB) in the photo as to me the orientation of the STM looks wrong.

The little dot is the pin1 marker and not the big one…

1 Like

If the 32Khz should be connected to pins 3 and 4 as per the datasheet, BillGates would be correct, your IC orientation is out by 90 deg.

Hope you have a nice hot air rework station handy? :slight_smile:

:-[ No rework station, but 9 more MCUs!

Heat gun can work too.

@ Gregg - your in good company, i have placed STM’s around the wrong way more than once ::slight_smile:

2 Likes