-
Notifications
You must be signed in to change notification settings - Fork 129
Soldering
Warning! Don't miss the Testing section about testing with a multimeter, it's super-important!
The best visual guide for soldering is iBOM (Interactive Bill Of Materials), here is one for the latest revision:
USB connector solders just fine with a drag-soldering technique. Spread a small amount of flux paste over the pins and slowly drag the solder tip with a small amount of solder over them. You don't even really need to drag, just touch them up a little, it's better to not apply lateral force to the USB-C pins, they are super flimsy. Remove excess solder with an iron tip.
Modules might need sanding off ~0.1 mm from the sides before soldering. They are a little bit too wide (picture) to fit between two PLC headers when the board is flipped.
Bluetooth module shielding is taller than everything else on the board, except top-mount USB-C. With the midmount USB-C, shielding adds about 1.15 mm overall, that's quite a lot (picture), see Home for height comparison. I usually stick tweezers into one of the corners and use them as a tension wrench, then heat shielding with a hot air gun and remove it from the board. I usually do that AFTER soldering the module.
Inner pads use through-holes for hand-soldering. Pre-tin and flux all the pads both on the module and the PCB. Use solder wick to remove excess solder and level the module. After soldering the outer pads, add solder to the inner pads from the other side. If there's no connection, reach the pad with a fine soldering tip (e.g. T12-ILS) through the hole and add more solder and flux if needed (you can also use a thin wire, e.g. diode leg to scrape the pad surface via the hole, it usually helps).
If you think the underpad solder is not touching, you can try this:
- Find a piece of fine wire (single core enamel works best).
- ???
- Poke into the hole, add some flux, heat it up and wiggle around, that should bridge the pads together.
I use this method to solve some of my connection issue and it works out quite well, make sure you do it quick and dont heat the pad too long, you might kill the module / that IO pin. Personally I try not to heat a joint more than 5 seconds. (source)
The key here is to transfer the heat (and the solder) to the underside pad, you can't do that if there's a air gap.
You can order a production-grade stencil on JLCPCB (additional $7). JLCPCB and other fabs use F.Paste layer from the gerber.
You can also make your own stencil:
- https://lowpowerlab.com/2013/02/11/diy-smd-metal-stencils-the-definitive-tutorial DIY SMD metal stencils (text)
- https://youtu.be/JWUJtmgh55M DIY stencil tutorial (video)
You can remove paint from the outer layer of the aluminum can using a hard sponge (video), then use magazine paper for toner transfer. Do not afraid to scratch the aluminum, toner will stick to anything. You can leave the inner layer coated and save on scotch tape. For etching I'm using solution made from hydrogen peroxide, citric acid and salt, it works fine with aluminum.
For the handmade stencil you can download .svg files in the releases section. Try printing from inkscape to match the scale.
There are also .stl ones (made with KiKit), you can try printing them in 3d but it's not recommended, even on DLP printers with layer 0.15. FDM printers need some tuning, e.g. 0.4/0.2 nozzle and layer 0.12. Doesn't really work too well.
See Components#led-polarity. TL;DR: align white bracket on the PCB and the green smidge on the front of the LED.
Show picture
This test actually tests soldering quality. Put multimeter in a DIODE MODE (not the continuity/beeper mode!). DON'T power up the module! Put RED (!) probe on GND pad, BLACK probe to the GPIO pad you want to test. Multimeter shows 0.6-0.9V drop voltage if the pad is connected firmly to GPIO, 0 indicates bad soldering, 0.01 if it's shorted to ground.
- https://aliexpress.com/item/32884093657.html Mastech MS8229 (expensive, see any multimeter with diode mode)
You can use this firmware file to test GPIO (you need to flash the bootloader first, see Bootloader article):
- blink.uf2 (precompiled binary from blink.c source code, double reset and copy to the internal USB drive)
Note that blinker only blinks on nRFMicro-related GPIOs, it doesn't blink on ALL GPIOs, so it can't be used for other boards.
Use any spare through-hole LED for testing. Connect LED+ to VCC pin and test all the Pro Micro GPIO pins consequently via 1K resistor. If it doesn't blink, it's mostly bad soldering on the underside pads. To reach underside pads through the holes, use fine soldering tip (such as T12-ILS) or a piece of copper wire, add more flux, add more solder, and heat them well to fill the gaps.
Connect USB-C and check the battery charger using pads at the very top, B- (square pad) and B+ (round pad) without connecting the battery, there should be about 4.2V. Red LED (if present) is usually on or flashing. Blue LED is usually off (it's controlled by the user firmware). You can also check voltage between GND and VCC pin there should be 3.3V.
Note that in revision 1.3 charging voltage and output voltage should be explicitly enabled in firmware, so voltages may be off. The only way to check 1.3 voltages is to upload firmware that sets POWER_PIN and PROG_PIN to ground (see Pinout article).
When something's wrong it's mostly charger (it fries first, usually after reverse polarity), try replacing the charger (TP4054).
I'm mostly using Bakon 950d, don't really like the other ones.
- https://aliexpress.com/item/32818260663.html 858D Fan (PSU built in), also search for Kaisi/Youyue 8856/8858 stations
- https://aliexpress.com/item/1005001868376803.html SH72, cheap $11 soldering iron (T13 tips, needs 12-24V PSU)
- https://aliexpress.com/item/1005001323205364.html Bakon 950d I use (tips I use are T12-K, T12-D24, T12-ILS)
- https://aliexpress.com/item/1005002253807041.html Chinese JBC station $50 clone (uses superfine T210 tips)
- https://pine64.com/product/pinecil-smart-mini-portable-soldering-iron supports QC/PD/DC, has Bluetooth client.
New notable soldering irons worth checking will be added here.
- 2022-10-04 - SI012 (both T12 and TS100 tips), L245 (T245 tips) : Aliexpress, GitHub, Aliexpress
- 2023-01-17 - Sequre S99 / Sequre S60 and S60P (JBC 245/210 tips, 100W): Alexpress, Aliexpress, Telegram
- 2023-10-08 - T65 (T65 tips, T13 compatible), Xiaomi Youpin (T65 tips), GD300 (T65 tips): Aliexpress, Aliexpress, Aliexpress
- 2024-03-30 - S99, T65, T80/T80P, SH73, PTS200, S210 and TS1C (wireless with bluetooth, CH579-based): YouTube
- 2024-04-22 - FNIRSI HS-02A/B (JBC 245/210 tips, color HD display, beeper, no BT, closed source): Aliexpress, GitHub
- 2024-04-26 - AIXUN T380 (JBC stand, 18650 pack), AIFEN A11 (JBC stand, OLED display): YouTube, Aliexpress
The board does not need a hot air station, and can be done entirely with a soldering iron, but you can also use stencil, soldering paste and a hot air gun or a hotplate.
Soldering with a stencil and a hot air gun (nRFMicro 1.3):
My latest way to solder the modules is to use stencil, soldering paste and a hot air reflow gun but I still have to fix all the inner pads with T12-ILS tip because hot air gun can't heat up the PCB evenly so it ends resting on a cold paste underneath. You can use either a reflow oven or a heating plate, you won't need to fix the board then.
Example nRFMicro 1.4 soldering with a "BGA Demolition plate":
- https://aliexpress.com/wholesale?SearchText=bga%20demolition (220V/250C - works great for $3)
Also see (untested):
- https://github.com/makermoekoe/Hotplate-Soldering-Iron (Alternative hotplate, hacky but interesting)
- https://github.com/AfterEarthLTD/Solder-Reflow-Plate (PCB hotplate, aka hotbed, video)
- https://aliexpress.com/wholesale?SearchText=mhp30 Miniware MHP30 hotplate (30x30 mm, ~$100)
Also there's a new Mini Hot Plate Preheater MHP50 from Miniware (50x50mm bed, fan, color LCD, 150W DC, costs $150):
- https://aliexpress.com/item/1005006297252436.html
- https://e-design.com.cn/en/Mini-Hot-Plate-Preheater-MHP50-PG9555615
- https://www.reddit.com/r/flashlight/comments/18abu25/miniware_mhp50
Also there's a heater that costs 1/10 of MHP30, with a larger area (55x55mm), and it's pretty good (USB-C PD, costs $10):
- https://aliexpress.com/item/1005005982970654.html
- https://youtu.be/ExcY5Aqhq5w
- https://youtu.be/oJUh5mUzVkE
- My solder: Indium 500g, 0.5 mm, 62% tin, 36% lead, 2% silver (SN62/PB36/AG2), made in USA.
- My flux: NC-559-ASM 100g (apparently has 2M residue resistance but I had no problems), also made in USA (Colifomia).
Solder | Flux |
---|---|
- https://github.com/joric/nrfmicro/issues/39 (LED polarity explained)
- https://likipiki.gitlab.io/posts/nrfbuild/ Гайд по сборке NRFMicro 1.4 (russian)
- Getting nRFMicro to work (from https://rmi-kb.com)