• Stars
    star
    197
  • Rank 197,722 (Top 4 %)
  • Language
  • License
    Creative Commons ...
  • Created over 7 years ago
  • Updated 12 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Markdown documentation repo for building and chosing parts for Unisolder, the open source universal soldering iron controller

unisolder-notes

License CC-BY-4.0

Just a set of notes for anyone who is trying to build his own unisolder controller. It is intented to be a personal recap of the original topic on dangerousprototypes.com forum.

If you are reading this after i finished my project (so you are in the future, WOAH!), probably i'm not updating this document anymore. If it was useful to you, please help to keep it updated, by modifying the document and making a Pull Request. The community will thank you. Please see the Contributing section of this document.

I'm currently building this project, and this page is a work in progress, so the info may be unaccurate and untested. No warranty is given. Please refer to LICENSE.md file for all the conditions.

General notes

Sources

Original sources from Sparkybg are available as a submodule in this repository. Check out the sources on GitHub: sparkybg/UniSolder-5.2

Soldering and mounting

No hot air or reflow oven is required, the board can be mounted with a regular soldering iron.
Sparkybg recommends BGA no-clean flux. I personally use a felt tip regular flux and it works well for me.
ATTENTION: there are some resistor pairs that can be mounted in the wrong direction. All the mentioned couples have to be mounted with the long side according to the long side of the front board. Those are the couples that require special attention during the mounting:

  • R27 and R28
  • R63 and R65, double and triple check this pair, it's very common to have these wrong. If you do probably you will get error 13.
  • R30 and R31
  • R35 and R39
  • R25 and R26
  • C60 and R46

Please check the image provided by the author if you have any doubt about mounting or component orientation.

Interactive PCB map

I'm currently hosting on my GitHub pages this very useful interactive pcb map by Bug82: unisolder-chips

Original post here, I'm hosting it with the author's permission after his hosting went down.

Configuration resistors

There are some configuration resistors, please make sure to pick the correct values for your application. Those are listed in the Equivalent parts in BOM section of this document.

Power supply

The controller can be powered anywhere from 9V to 26V, AC or DC. However, since the iron current is limited to 6A RMS, more voltage means more power delivered to the iron. A toroidal transformer is recommended: 24V 120VA. Although this is not fully recommended (because of grounding difficulties in switching PSUs) you can use a 24V DC supply. There are two power input ports on the "back" pcb. One is for AC, the other is for DC.

Earthing

The controller should not be earthed in any way, except for the iron tip. In many cases the earth of the tip differs from the ground of the controller. For this reason, is not possible to use the tip earth connection to send the sleep/stand signal (see Sleep sensor section of this document). SLEEP pin should never be connected directly to the iron tip. Also, proceed with caution with the ground clip lead if troubleshooting the board with an oscilloscope. Disconnect the system from main's earth before attaching the clip to board ground.

OLED display configuration

At an early stage of the project the author was planning to implement both the 7 segment display and the OLED display. The 7 segment option was never implemented, and the compatibility was removed. There are some components that you'll have to remove from the BOM and some pads to short.

  • Ensure to get a SSD1306 128x64 oled. It is mainly available in a 0.96" size. I've used this part with success: DD-12864WE-4A. However, user SZ64 from the forum was able to get a 1.3" display (UG-2864KSWLG01) and confirmed that it is pin to pin compatible, and needs 12V. Users NECHTO and afedorov patched the firmware to work with SH1106 displays, patches can be found in this forum post and recompiled firmware in this other post.
  • Q15, Q17 and U9 (UL2003N) are not needed.
  • Ra to Rg are shorted
  • Ja to Jg are shorted ย 
  • Short, on the back side of the front pcb, the pins that have some soldermask free pads around, with the pads.
  • See the U19 FAN5331 section in this document, for picking the correct boost feedback resistor.

Buzzer

Q20 and D17 are needed only if a DC active buzzer (internal oscillator) is used. The one specified in BOM, however, does not need them. Unfortunately for now the DC buzzers are not supported by the firmware.

Sleep sensor

The author of the project has provided also a sensor module, based on an IR system, to detect whether the iron is in its holder.
You can use whatever system you want: a mechanical switch, a reed switch, an hall sensor... You can use any switch or any other device that shorts SLEEP to GND when the tool is in the holder. SLEEP is connected to a 3.3v pullup resistor.

Calibration

You'll need to calibrate the controller by connecting a very precise 10 ohm resistor (0.1% is recommended) between SENSEA and Vout1-.
Go to the Calibration submenu and turn the trimmer until R shows as close as possible to 100 times the resistor. If the trimmer doesn't get you to the value, try replacing R57 and R59 (one by one) with next higher and next lower value (1.8k, 1.3k).

Iron ID resistors

The station can automatically recognize the instrument you attach to it. To do this, you will need a resistor pair in the iron connector, so that the system can read it when a new instrument is plugged. If you don't want to switch between instruments, you can simply connect the resistor to the station connector instead of the iron connector. ID resistors must be not less than 1% tolerance. We will call Rid1 the resistor that goes between ID and Vout1-, and Rid2 the resistor that goes between ID and Vout2-

Soldering iron model Rid1 Rid2
HAKKO T12/T15 1k 5.6k
HAKKO FX8801, HAKKO 907 1k 820
JBC C245 150 5.6k
JBC C210 3k 5.6k
JBC C105/C115 3k 1k
JBC Microtweezers 1k //
JBC Nanotweezers 1.5k //
WELLER WSP80 120 5.6k
WELLER WMRT 680 //
ERSA RT80 300 110
PACE TD100 Black 680 560
PACE TD200 Blue 680 470

Software and programming the PIC

There are two alternatives for the PIC32 firmware:

  • Using the firmware without bootloader, loading it directly with a PicKit
  • Using the firmware with bootloader, loading the bootloader with the PicKit and the firmware via usb and UniSolder's PC software.

To me it's unclear what are the advantages of picking one choice over the other, I have to ask the author to clarify.

If you don't have a pickit and don't want to get one, you can use an Arduino as here. I've not tried this solution personally, so i don't know if it works. Let me know if you try this.
You can also use pic32prog from sergev, if you have a pickit 2 and want to program the microcontroller.
To load the firmware with a PicKit you will have to use MPLAB X, Microchip's software.
As zed65 stated in the forum: "You can NOT program the PIC via the PicKit2/3 standalone programming software. You have to put the programmer into MPLab mode in the standalone software then program it via MPLab."

To attach the PicKit3 to the unisolder board check on the PicKit for the little arrow pointing to pin 1. Connect that pin to the square pad on the unisolder board, and the rest of the pins in order. Pin 6 of the PicKit stays disconnected.

Modify the software

If you want to modify the software you'll have to compile it with XC32 v1.33 compiler (paid), adding the "s" option to the optimization.

Testing the bootloader

To test if the bootloader loading went ok, hold down keys "+" and "-" during power up. If some moving squares appear on the screen, the bootloader is working.

Equivalent parts in BOM

Some parts are not really easy to find. Some of them can be easily substituted with equivalent parts.

Resistors

Rs1 shunt resistor, R37, R42

0.003 or 0.004 ohm resistor can be used as a shunt. WSL3637 from Vishay is used. I wasn't able to find an equivalent part that would have a similar package. If you use 0.003 ohm shunt, R37 and R42 have to be both 1.5k 0.1%.
If you use 0.004 ohm shunt, R37 and R42 have to be both 2.0k 0.1%.

Ra to Rg 47ohm

Those resistors are not needed. You will need to short their pads with solder or use zero ohm resistors.

3v and 3.0v zener diodes

Despite the different name in the BOM, the same part can be used for both.

Rgnd1

This resistor is in a 2512 format, 10M, it is there to prevent huge electrical potentials between the computer's ground when it's connected and the station's ground.
You can use any value between 1M and 10M, or leave it disconnected if you feel safe, anyway this isn't recommended.

Rc2 Bourns trimmer

In BOM it's indicated as Bourns 3362, this part is a THT trimmer from a previous version, correct part number is Bourns 3364X-1-202E.
I'm using a Bourns 3314J-1-202E which also fits well.

Capacitors

For the ceramic capacitors insulator type, C0G is the best, X7R is also good. X5R is not as good as X7R. If it's possible avoid Y5V. Where voltage is not specified you can pick any voltage. 50V rating is better than higher. A contributed list of which capacitors need higher voltages than the logic 3.3V would be appreciated.

Diodes

Please note that many times with diodes there is the same part from a different manufacturer listed with the first two letters.

D1, D2, D3, D4 SR580

SR580 means "Schottky rectifier, 5A, 80V". There's nothing special about these diodes. Just use 5A 80V Schottky in a DO-201 package.
This part can be substituted with SB5100 or other Schottky Rectifiers with at least 5A current capability and at least 80V forward voltage. However the 80V part is still preferable, because it will have less forward drop.

D5, D8, D10, D14, D15 BAT46WH

Alternative parts:

  • BAT46WH

D6, D7, D12 SS310A

SS310A means 3A, 100V schottky. Any Schottky with the same ratings will do. For example:

  • SK310SMA

D9, D11, D13 1N4007

Alternative parts:

  • GF1M

D18, D19 MMBD1505A

If replacing this part, beware that the reverse leakage current is very important and should be as low as possible.

D22 SS34A

SS34A means 3A, 40V schottky. Any Schottky with the same ratings will do. For example:

  • SK34SMA
  • SS34FA

D16, D17, D20, D21 BAV199

This part is common with a suffix, such as "BAV199,215". It is the same part.

TVS1 60V TVS

60V TVS is just a 60V TVS. Any 60V TVS or close to this will do. For example:

  • 1.5KE62A

#ICs

U1 LM2675, R3 and R4

Either the LM2675M-3.3 and the LM2675M-ADJ version can be used.
If LM2675M-3.3 is used, R3 has to be 0 (shorted) and R4 has to be 1.5k.
If LM2675M-ADJ is used, R3 has to be 3k and R4 has to be 1.8k.
LM2674 can be used too.

U9 ULN2003L

You don't need this IC, this was only for the 7-seg version.

U10 MCP4651-503 (50k)

This part seems hard to find. You can replace it with the MCP4651-104 (100k) version. You can NOT use the 103 (10k) version.
Beware that this part is different from U15 below, they have a similar code but with the 5 and the 6 switched.

U15 MCP4561-503 (50k)

This part (as before) seems hard to find. You can replace it with the MCP4561-104 (100k) version. You can NOT use the 103 (10k) version.
Beware that this part is different from U10 above, they have a similar code but with the 5 and the 6 switched.

U6 REF3030

This part seems harder to find than the others. These are some of the possible alternatives:

  • REF3130AIDBZT
  • MAX6010AEUR
  • MAX6063AEUR
  • ISL21010CFH330Z
  • MAX6035AAUR30 may work, not personally tested.
  • LM4120AIM5-3.0 may work, not personally tested.

U14 LM4041CIM3-1.2

Can be substituted with LM4051AEM3-1.2

U12, U13, U18 MCP6V27

This part can be substituted with:

  • MCP6V02
  • MCP6V07
  • AD8629

U16 ADG736

Can be substituted with MAX394EUP+

U17 MCP6V03

This part can be substituted with:

  • MCP6V01
  • MCP6V06
  • MCP6V08
  • MCP6V26
  • MCP6V28
  • AD8628

U19 FAN5331, R68

This part can be substituted with LM2731, FAN5333A or FAN5333B. Please note that either version of FAN5333 have a different feedback voltage from each other and from the FAN5331. LM2731 has the same feedback voltage. This part is the boost converter for the OLED display. Different OLED displays need different voltages. Usually they can be either 9V or 12V. Check the voltage of your OLED and select R68 accordingly. R68 should be at least 1%.

Follows a table with values that should suit. These values are not tested (FAN5333B with 9V display is tested by me and working), proceed with caution and check the voltage prior to soldering the OLED.

IC R68 for 9V display R68 for 12V display
FAN5331 (1.230V) 4.7k 3k
FAN5333A (0.110V) 340 249
FAN5333B (0.315V) 1k 732

Transistors

Q2, Q8 SUD50P10

Can be substituted with SQD50P08

Q10, Q11 IPD053N08

AUIRFR3607 or IPD12CN10NGATMA1 can do the job.

To substitute this part the important parameters are:

  • Vds(max) should be at least 75V.
  • Rds(on) should be no more than 0.01ohm.

Q14, Q15, Q16, Q18, Q19, Q21, Q22 IRLML6401

This part can be substituted with VISHAY SI2315BDS-T1-E3 (@Tony, pg 113 unisolder forum)

Q15 IRLML6401

This part should not be installed when using the OLED display.

Q17 IRLML2502

This part should not be installed when using the OLED display.

Packages compatibility

SOD123 diodes

SOD123 diodes can be used also in miniMELF packages. Check in the document to see which parameters are important, to find a substitute.
If you can't find the part you are looking for, ask in the thread and please open an issue/pull request to update the document.

SOT223

Footprints for the SOT223 components are also compatible with DPAK packages.

Connectors

These are the part numbers for the connectors I've used. I was able to crimp all of them with a single tool: NEWBRAND NB-8160-04

J1, J7

Cable connector: MOLEX 039013022 555702R1
Crimp pin: MOLEX 39-00-0039
PCB connector: MOLEX 5566-02A-210

J2, J3, J9

Cable connector: MOLEX 5557-04R
Crimp pin: MOLEX 39-00-0039
PCB connector: MOLEX 039288040 5566-04A-210

J4, J8

Cable connector: 3M 89110-0101HA
PCB connector: 3M N2510-6002RB

J6

Cable connector: MOLEX 022013037 2695-03RP
Crimp pin: MOLEX 008550102 2759-(555)L
PCB connector: MOLEX 022292031 AE-6410-03A(241)

J5 RJ11v

This is just an RJ11 vertical connector. I found that Molex 95522-2667 fits perfectly.

Iron connector

If you don't want to keep the original connector from your iron, I've used and I suggest:
Socket: LUMBERG KFV 81
Plug: LUMBERG 0332 08-1

JBC T245

The matching socket for this iron, if you want to keep the original plug, is the Hirose RPC1-12RB-6P(71)

Contributing

Contributing to this repo is very welcome, feel free to add any information.
The information on this repo are gathered all around the internet, especially from the Dangerous Proto forum, and not only by first-hand experience. Please specify if what you're adding is tested by you personally or mention the source.
Please pay attention to not add copyright-protected material to the repo. Photos you're not the author have to be considered under full copyright by the author, unless otherwise explicitly stated.

Many thanks to the contributors @rsre and @lauer2356/EricLau

Currently I'm on page 100 of the topic. This is just a reminder for myself, ignore it

More Repositories

1

very-good-uc-doggos

A special graduation present for a special friend. Six microcontrollers in one devboard
49
star
2

omega-dock-new

A dock for Onion omega, omega2 and omega2+. It features: Microusb for power supply, USB host, Ethernet
KiCad Layout
36
star
3

Banana-Random-Number-Generator

Random number generator based on radioactivity from bananas
KiCad Layout
33
star
4

cern-technical-student-notes

Notes on how to increase your chances at getting accepted for the technical student programme at CERN
23
star
5

colors-of-italy

Colors of Italy รจ una mappa digitale luminosa, sempre aggiornata, che mostra in tempo reale in che fascia colorata si trova ogni regione italiana.
KiCad Schematic
17
star
6

triennale-elettronica-polimi

Collezione di materiale libero, prodotto e recuperato, utile ad affrontare la laurea triennale in ingegneria elettronica al Politecnico di Milano
C
17
star
7

attiny10-notes

Notes for using the ATtiny10 with the open source AVR toolchain
Shell
13
star
8

ITA-keyboard-enhanced

Layout di tastiera italiano con vocali accentate maiuscole
11
star
9

53xLIDAR

53xLIDAR is a solid state, 16 points lidar, based on ST's VL53L1x sensors
C
11
star
10

sensor-systems-course

STM32CubeIDE files for the Sensor Systems course of Politecnico di Milano
C
6
star
11

desd-labs

Code for the Politecnico di Milano coruse Digital Electronic Systems Design: FPGA labs
VHDL
4
star
12

blink-errr

For how long this lady will be able to blink her eye on a CR2032 cell?
KiCad Layout
3
star
13

master-electronics-polimi

CSS
2
star
14

ADC-DAC-16bit

A single board for a dual channel 16 bit A/D and a dual channel 16 bit D/A converters
KiCad Layout
2
star
15

WS2812-driver

Driver for WS2812 using SPI
C
1
star
16

calcolo_numerico

MATLAB
1
star
17

internet-and-communication

Repository for the LABs of the Fondamenti di Comunicazione e Internet (fundamentals of communications and internet) course of prof. Capone from Politecnico di Milano
Python
1
star
18

basil365

I want fresh basil all year round, but outdoors it doesn't grow. Let's fix this and make it IoT
HTML
1
star
19

DESD-FPGA-course

Tcl
1
star
20

wordle-solver

My attempt at solving wordle puzzles using bayesian statistcs
Python
1
star
21

valerionew.github.io

HTML
1
star
22

computational-madness

Some easy programs i wrote trying to calculate pi with the Monte Carlo method
C
1
star
23

elettronica-digitale-notes

Polimi 2019-20, file di elettronica digitale
VHDL
1
star
24

ackerman-deals-bot

Python
1
star
25

electronics-MSc-webex

WebEx Links for the first year first semester lessons of the Master of Science in Electronics Engineering at Poltecnico di Milano
HTML
1
star
26

microcontrollori-polimi

corso di microcontrollori del politecnico di milano - AA 2018/19
C
1
star