• The build

    Christoph05/25/2022 at 21:28 0 comments

    Not easy, but doable! I had outlined some of the tricks I gathered over time here: https://hackaday.io/page/10792-assembling-densely-populated-pcbs-with-0201-components

    This project actually isn't as bad as the board I had shown on that page, but still - proper tools are absolutely required for such a build. Like a stereo microscope.

    Paste applied manually:

    I spared the GNSS and the little BGA. The BGA doesn't need paste and I wanted to do the GNSS with low temp paste after testing everything else.

    After soldering everything on my stove top:

    Now the BGA. Added some tacky flux to the PCB with a brush, placed BGA and added a small inductor on top for extra weight:

    After that was done I could test the BGA / magnetometer. I could measure the clamping diodes on SCL and SDA, and proceeded to run a little arduino test to see if it was working. Fortunately, there's a library with an example sketch for the MMC34160PJ so that was easy.

    Next: ZOE-M8Q. I placed some paste on the PCB frame and picked it up with my soldering iron with a fine tip to pre-tin all pads. Then clean, add flux and level with hot air plus a few touch ups here and there for this result:

    Clean again, add tacky flux, place GNSS and reflow at 220° C:

    With a molex flex patch antenna we're at 1.1 g:

    The GNSS worked as well and gives a cold-start fix with half of the sky in view after 34 seconds. Tested with https://pypi.org/project/PyGPSClient/.

  • Layout is done

    Christoph05/04/2022 at 20:44 0 comments

    I have made two layouts, one for 2 layer PCBs and one with 4 layers. There's not a huge difference, but power supply is a bit better with 4 layers.

    Here's a 3D view:

    The schematic is pretty simple since the design is pretty much just a breakout board for the two chips (power supply, magnetometer with I2C and pull-ups, GNSS with UART), so I'll leave that out for now. It will be included in a repo later on.

    The I2C pull-ups are in the top left corner and can be disabled with a sharp knife, between the two dashed lines.

    The chips operate at 3.3V nominal and the NCP160 regulator can provide these from a 5V rail. However, since the NCP160's dropout voltage is extremely low, the supply can even come from a 3V3 rail and nobody would notice. There was even enough space for a reverse polarity protection diode.

    An LED was added to indicate that a fix was found (ZOE-M8Q's timepulse output).

    The passives are 1206 (tantalum caps), 0402 (caps) or 0201 (resistors and caps). I have 7 of the GNSS chips around so that's the number of boards I plan to assemble (with low temp paste, see here: https://hackaday.io/page/10792-assembling-densely-populated-pcbs-with-0201-components). Regarding assembly, that GNSS LGA and the magnetometer in a 1.6 x 1.6 12-BGA is surely a treat. I'm looking forward to this.