Main Site Documentation

G30 prototype


#1

So I got my prototype board put together…

But I can’t get it to respond.

Because I ordered the wrong footprint part I had to improvise on USB.

Windows device manager detects absolutely nothing.

I’ve powered a TH G30 off of the 3.3v rail and it works fine.

I meticulously traced every pin on the processor to it’s destination and everything traces fine. I had to pull the first G30 and replace it as there was solder bridging from the first reflow on the inside of the pins I couldn’t clean up without removing it. The second chip has good contacts on every single pin (took 2 hours to trace everything) and there is no bridging.

My 12mhz crystal was not working whatosever - nothing is being put out on XTAL_OUT. I ended up removing the 12mhz crystal, and capacitors, and hard wiring a shunt from XTAL-IN on the G30 TH board to the processor to get it a clock signal. That shows up fine on the scope now.

But no matter what I do I can’t get anything to show up on device manager when I plug in USB. I verified the pinouts on the USB line up with the correct pins on the MCU.

The G30 TH board shows up as “EMX” when I plug it in. The G30 prototype board, absolutely nothing.

I don’t have a computer handy with a serial port - and the USB to serial cable I had on hand is incompatible with Windows 10. I plan on buliding a computer from scratch today out of boneyard parts to get a win7 / serial capable system up so I can get access to the COM headers.

But it looks like this just isn’t working. I’ve verified 3.3v is good and going to all pins it is supposed to go to. I’ve triple checked the caps and pullup resistors, and the 4.7 cap on the pin that needs it. My voltage regulators are working good - I can use them to power the TH module no problem on a breadboard next to this one. TLV1117 3.3v regulator is driven off of an L7805CDT 5v regulator which is being powered by a 9v DC power plug on the 2.5 mm jack. All of that works as expected.

Not really sure where to go with troubleshooting from here. I basically mirrored the G30 dev board schematic when designing this, with the addition of a pair of GPIO extenders added to be able to control 32 relays via breakout headers. It’s not an overly complex design.

Any ideas? I worked on this for 12 hours yesterday and made no headway.

(Also I ended up getting a USB port harvested and soldered directly to the board, eliminating that hack job of a USB breakout, it checks out on logic tests)


#2

Here’s the schematics on the processor related stuff.


#3

(Yes I’m aware I missed a pull up resistor on both SD card and COM2, I will remedy that on a revision before going to production. I can’t find anything else I missed though)

My crystal circuit ended up with 12pf caps on this device P/N; ABM10-166-12.000MHZ-T3

Crystal is 8pf so 2(8-2)= 12, using a generic “2” for cstray to start (figured I’d tune that on the bench if I needed to)


#4

@trent1098s - I don’t see the 33 ohm resistors on the USB data lines. Maybe that is it?


#5

Is that static resistant carpet? Could that be your problem? (#joking)


#6

Hmm yeah I could add those as EMF filters. I am seeing a small 48khz wave on the oscope (very small, but the board is either picking up or radiating noise). I need to isolate my crystal area better on the next revision, and re-look at my ground plane gridding.

Hahah with the high humidity here that isn’t a problem right now.


#7

There is no pulldown resistor on PB2. The datasheet and the G30 dev board has this. The STM32F401RET6
datasheet shows this as BOOT1 and probably why your design is not working.


#8

I don’t have anything on PB2. That’s exposed on a 4 pin GPIO header on my board.

I have a 10k pulldown on BOOT0 (pin 60)


#9

On the G30 TH board I get ~1.76 v on the oscillator pins. On my board I get 0.211v on crystal out 0.097 on crystal in.

The chip isn’t putting out any voltage on pin 6, so the crystal circuit can’t do anything.


#10

OHOOOOOOH! I FOUND IT!

(I’m avoiding using expletives although many were just uttered.)

The first G30 chip I put on had solder bridging inside pins and I couldn’t manage to wick it out so I pulled it and hand soldered a new one on.

pin 13 (3.3v) was showing 0.00 on the multimeter, when I pushed down with even the SLIGHTEST pressure it showed 3.3v and my laptop dinged with a new device found. Lift up and it dinged again.

I squirted some flux in there, resoldered the pin, and now it works!

Thanks guys.


#11

“It’s always the last thing you check”

(Because then you quit looking lol)


#12

Also that’s how I missed it when testing pin to pin, just a slight amount of pressure on top of the pin on the g30 and that connected. So when I was going pin to pin checking every-damn-connection, they all looked good.


#13

Actually EMX isn’t showing up.

The laptop dings when I plug it in and out and device manager refreshes each time I plug it in, but I can’t find anything in the listing after it refreshes?


#14

Duh

I don’t know why G30TH was showing up as EMX.

This G30 shows up as a bootloader, COM4.

Looks like I’m good to go!

Thanks a bunch guys. I was really pulling my hair out, figures it was a stupid assembly error. :frowning:


#15

Crap spoke too soon.

Device manager sees it but FEZ Config, when I select COM4, throws an error.

Likewise Terraterm can’t connect to it.

Don’t have a clue where to go from this point. :frowning:


#16

OK FEZConfig isn’t wanting to work. (Had that happen before with Windows 10)

Don’t have an older computer on hand.

But I do get here; how to update firmware from here?


#17

Nevermind found the doc

https://www.ghielectronics.com/docs/54/loader-tinybooter-g120-and-emx-families


#18


#19

(This is exciting, so much work went in to getting to this point lol)


#21

Prior post deleted because I’m a retard who can’t follow directions. :slight_smile:

1k option helps.