Skip to main content
Topic: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron driver (Read 643667 times) previous topic - next topic

Re: HAKKO soldering pencil driver

Reply #15
[quote author="arhi"]hm, I'm getting fast in KiCad but it seriously misses some required options like "export to PDF" for example :([/quote]

if you're on a windows box, you can try out cute PDF writer.  Just make sure not to install the yahoo toolbar!  It works quite well for the simple stuff - winds up looking just like another printer.

Re: HAKKO soldering pencil driver (907 ESD)

Reply #17
didn't think so, but figured i'd offer just in case. . .

this project looks great, btw!

Re: HAKKO soldering pencil driver (907 ESD)

Reply #18
[quote author="bearmos"]this project looks great, btw![/quote]

it will be when it start working.

I am a complete idiot with this project but .. it's not the first time I do a same mistake. Without checking out I trusted someone on something and that someone was obviously talking from his "where sun don't shine"... I use this hakko pencils (907 ESD) for years and they work like crazy (and most of ones I have are cheap knockoff's, I only have one original hakko pencil)... I have bunch of tips (more then 50 I think) of different type and size (unfortunately most of them are fine tip cone that are fairly useless for normal work but..). The driver I made years back use to treat the sensor as PTC. It's not any standard PTC I was able to find (not PT20 like in Weller nor PT50 nor PT100 like in bunch of other sensors) but it has some (pretty linear but) crazy curve (approx 25C 12R, 250C 36R, 300C 40R, 450C 52R). Now few months ago a "person I used to trust" told me I made a mistake and hakko has "for sure" K-type sensor - so I designed this new board in order to get "precise readings". Of course it does not work with HAKKO as darn sensor IS PTC and the idiot I was talking to was thinking about SOLOMON SL10, SL20 and SL30 soldering pencils because they look like (not to me but to him) like HAKKO pencils so he thought they are the same :(.

I ordered one SOLOMON pencil and it will hopefully arrive on Tuesday (who knows maybe on Monday but I don't have hopes for that), they are also very good pencils, and can be found pretty cheap. I know they are pretty popular in Europe. In USA they are sold under different names (solomon is actually OEM factory so they produce irons for many different brands, popular brands that are actually solomon in usa are Elanco and Tenma and probably many more only I do not live in USA so don't really know :D )

Anyhow, even if this works with solomon 1/1 (and there's no reason why it would not) I need to modify this driver to work with HAKKO too as originally intended as I have load of hakko pencils and load of hakko tips, and for solomon I will have a single pencil with one or two tips only ...

The idea I'm attm working on is to make adapter that will connect on one side with HAKKO PTC sensor and output mV values like K-type thermocuple. It would allow to keep the current board and with small add on board and software modification I could control both type of pencils with same controller :).

So far it looks doable :). For now I added to firmware option to use or not to use DS18B20 as I would not need "ambient" temperature with HAKKO and I will need it with Solomon.... but let me solve the hardware first and then I'll work on the software bit more. If it all works I'll make a new pcb with "dual input" so that you do not need "external" converted for hakko....

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #19
And now finally - working

Here's the firmware version 2.7 that support both Solomon and Hakko pencils.

It uses original PCB (one that expects input from K-type thermocouple) only if you connect the HAKKO 907 pencil you need to add few wires :D

0. connect sensor to sensor- and sensor+ just like solomon, so J1-1 and J1-2
1. you need to connect Sensor- (J1 PIN2) to GND (J3 PIN3) with a piece of wire
2. you need to add ~15K resistor between Sensor+ (J1 PIN1) and Vdd (J3 PIN1). On my rig I added here a 10k resistor (heatshrinked) + 10k trimmer and turned trimmer so that total resistance is 15k

That's all you need to change wrt hardware.

When you power up the board the encoder will change the target temp.
If your encoder is increasing/decreasing values in wrong direction swap wires on JP1 and JP2 (swap encoder A and encoder B wires).
You enter menu by pressing the button. I use separate button but if you have encoder with button embedded go with it :) it is how it is meant to be used. I had a few encoders with button but I could not find them anywhere in the house.

When you enter menu the "SETUP MENU" will show. If you then turn the knob and press button you will exit it, but if you just press button again you will enter menu. Note that menu will save all changes you make, every time!

First menu option is POWER ON TEMP. This is the value your target temp will be set at when you power on your iron. I set in HEX default value to be 200C as it's just below solder melting point so from there you can easily move to any target you like.

You go to next option (and save currently selected one to eeprom) by pressing button

Second option is HYSTERESIS, here you just define a hysteresis in C

Then there is option "USE DS18B20"
If you select YES here, the soldering iron driver will assume that sensor input is K-type thermocouple and that J3-2 is DS18B20 measuring temperature of the cold joint.

If you select NO here, the soldering iron driver will assume that sensor input is a voltage divider (amplified 240 times by the mcp917 on board) and will calculate the temperature using simple T = offset + slope * ADC. You can change the OFFSET value trough next option in menu (available only if USE DS18B20 is set to NO) but you can't change the slope value.
Slope value is stored as a 32bit float in eeprom positions 7-10 and value stored is 3.428571429. This is the calculated value from few hakko pencils I have here. It's maybe not 100% precise as measuring temperature of the tip ain't nearly as easy as one might think (as idea is to measure in 200-400C range).. the IC thermometer show's ridiculous values (probably because of the shiny tip or because measurement area is too small), the contact thermometers expect to have good contact area and shiny pointy tip ain't really a perfect choice :( .. anyhow, it is a 32bit float on that location so anyone with pickit2 can easily change the value. I didn't add posibility to change slope variable in firmware because PICC asked for too much flash in order to implement it .. and this is just a small 16F690 :)

Anyhow, my HAKKO pencil now works with it. And it works nicely. Today or tomorrow SOLOMON will arrive but I see no reason for it not to work immediately :)

I'll add the voltage divider + jumper on a next revision of the PCB but I'm very pleased how this works as is :)

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #20
And here's the V3.0 of the pcb (with v2.7 of the firmware) .. tested and working like a charm ... Still some room for improvement but .. so far so good :)

Licence: public domain
Author: me myself and I with the little help of my friends

  • 1. connect AC for heating element (24VAC for HAKKO and SOLOMON irons, different irons might require 12VAC) to J2
  • 2. connect 6-12VAC for the mcu power to J4. If you are going to mount a heatsink on U4 you can just bring here the same 24VAC from J2. I suggest using BA05T instead of 7805 as it is newer/better device
  • 3. connect your soldering iron to J1. If your iron uses Ktype thermocouple make sure you connect + and - correctly, if your iron uses thermistor polarity is irrelevant
  • 3a. if you are using iron with Ktype thermocouple (for e.g. solomon sl-10 or sl-20 or sl-30) you also need to attach a DS18B20 on J3. The position of the DS18B20 should be as close to cold joint as possible. With some irons cold joint is inside the handle (the K-type is connected to regular copper wires in the handle and then those run trough cable and into controller) and with some more expensive irons the thermo couple wires run all trough the cable to the connector so the cold joint is at your pcb. Make sure JP4 and JP5 jumpers are OPEN with Ktype thermocouple.
  • 3b. if you are using iron with thermistor (for e.g. hakko 907) then make sure JP4 and JP5 are closed. Before attaching the Sensor to the J1 make sure that J1-PIN1 (sensor+) to J3-PIN1 (Vdd) show resistance of 15k exactly. (use the multiturn pot RV2 to achieve that).
  • 4. When you turn on the device, press button to enter menu. If you are using Ktype thermocouple iron select USE DS18B20 to be YES, otherwise select NO
  • 5. If your encoder mixed up CW and CCW swap JP1 and JP2 wires

V3.0 changelog
  • Added thermistor voltage divider with calibration pot and jumpers to schematic
  • PCB completely redone, all resistors are 0805 now and both 5V regulator and TRIAC are now on the edge of the board for easy heatsink mount
  • PCB looks a little bit better now (still ugly but as I mentioned, I'm not a big on PCB design)

If someone draw this is KiCAD (pcb, I attacked the schematic) please upload to this thread.

Archive attached contains
  • Source files for the Microchip PIC16F690 controlling the board  - PICC project
  • HEX file for direct upload to PIC16F690 (since PICC is not free so not everyone can compile this)
  • Schematic and PCB in PROTEUS 7.8SP2
  • PDF's containing schematic and PCB (since PROTEUS ain't free)
  • CADCAM - EXCELLON/GERBER files for the PCB manufacturing (since PROTEUS ain't free and making pcb's from PDF ain't really nice)
  • licence.txt - stating that this is "public domain"
that's all folks :) I don't think there will be any more changes wrt PCB, only few more releases of the firmware (maybe I implement some PID control, but looks like it's going to be tough)

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #21
btw I didn't manage to get everything to fit on 5x5cm (big connectors and 2xto220) so I let it fit on 10x10cm as there's no real benefit in 6x6cm (when it cost same as 10x10) ... All the trough hole devices can also be smd so maybe with some DCDC instead of 7805 and some smd triak this would fit on 5x5cm .. (as then only a single 24VAC supply is required ... not sure .. if someone want to try .. all sources are there and I'm available for help too )

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #23
Thanks for the schematic image. I was just getting latest kicad to take a look. This is a great project. I want to do one!

I have dreams of a PIC24F64GB002 version. Plenty of room and power for float, USB updates, and still available in DIP.
Got a question? Please ask in the forum for the fastest answers.

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #24
:D there's a pdf of the schematic in the main archive: download/file.php?id=4766

PIC24F64GB002 is really too much for a soldering iron controller :D ...

I am planning on making a good hot plate controller sometime in near future and that's where similar chip can be very useful... only not sure if it has enough pins. I wanted to use 5 or more sensors for the plate, heater control etc etc + some tft lcd to show everything nicely, SD card to store profiles ... usb is probably just going to be for debugging (or not at all).

This soldering controller just allows me to have few more soldering irons cheap so I don't have to ever change tip again :D (I hate when I need thinner tip for some work, then fat for something else and then miniwave for smd .. )... this way I can have 3-4 different tips always handy :D.

I might (depends on some packages I'm expecting in next few weeks) decide to make a "multi pencil driver" - so similar thing only that controls 4-5 pencils from the same box. Saves desk space etc etc ... in that case I'd go with something bigger then 16f690 :D .. but not sure if DSpic or 24F are really required, maybe some 18F is a cheaper choice.. (I used 16F690 for this project because I have few of them lying around and I don't have what to use them for since I stopped purchasing 8bit mcu's completely, so I just want to use what I have on stock :D ) ... this itead's 5pcb for 5$ option is going to be nice, I now have 9 pcb's of v2.0 that are really not "that good" (usable but ..)

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #25
I am planning on making a good hot plate controller

That was kinda my thought - reflow oven options. I suppose that needs a nicer LCD for the profile display. Hotplate is probably better, I think most people prefer those, I thought even big places like SparkFun used to use them. To start I just want to try my own iron controller though :)

Could the pencil type selection be config option? For thermistor ground JP4 with a transistor and source from a 5V PWM signal? Maybe directly from PIC pin?

Is the design partial to a 18B20? They seem expensive when I price them (besides samples), and 1-wire is a pain. Microchip has cheap analog thermometers that I have in my junk box (To-92 as well).

The 24F is super overkill :) It has a great number of accessories for mischievous fun though. Lots of PWMs for LCD contrast and backlight (auto) adjustment :) For a one-off personal project, it is in the junk box too.
Got a question? Please ask in the forum for the fastest answers.

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #26
The oven and plate should have same controller (that's why I mentioned 5+ sensors).. but the software is challenging option there, hw is fairly simple :D .. I know when I start looking at that project I'll chose proper parts and not "what I have lying around" :D

The pencil type, well, in theory yes, but it's not that you want to connect and disconnect 2 different pencils during work. It's more likely that you will make that selection only once. Also it was a fastest hack to make my current 10 pcb's work with hakko pencils :D (basically I attached a wire from TK- to ground and a resistor from TK+ to vdd)...

wrt 18b20 I had 5 of them sitting in a small box under my monitor and I think I have 10 more lying around .. used to use 1wire a lot in my projects .. it is pretty reliable bus and those buggers work great. In theory one could use analog devices or even a simple thermistor (I use NTC's in most of my products, as those I purchase in 100s to get the price down) to get the current temp value .. With analog devices there's even a way to link the analog thermometer directly to the output of the ktype amplifier to get safe signal directly into pic but it was just too much work :)

The 24F .. donno, I have few 16bit pics lying around 24hj128gp502, 33fj12mc202, 33fj128mc802, 33fj128gp802 ... was thinking about using one of those .. 24f64gb002 is also nice (cannot find it in my drawers, I was sure I had one) ... I also have some nice touch screen tft's from itead (or were there from sure .. I think they were from itead) that I planned to use with this project ... but .. as I mentioned attm all I have is short time between real work so I think this project will have to wait few weeks. It is next in line on my project todo list :)

OLD-Skool solution to Soldering Iron Temperature Control

Reply #27
OK, so here's a quicky solution to a recent problem:


Here you see an XYTronic 200GX iron that I purchased at a local commercial supply shop for US$19.00.  It's a good iron with very nice interchangeable tips, but it runs way HOT at it's rated voltage of 120VAC.

The solution is a Lutron 500W incandescent lamp dimmer, junction box, neon panel lamp and hacked extension cord- all of which cost me about $16.00 at the local Home Improvement store.  Yes, it's ugly, and it is open-loop control, but it does the job.

As a side benefit, it works great with my Dremel tool, also!

Necessity is the Mother of Invention!

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #28
Using a dimmer to control cheap soldering irons was always a good trick, especially since dimmers could be picked up for a few $$ in "all for a dollar" stores .. There's also another trick that works with most of cheap soldering irons - inside the handle just add a single 1n4007 before you bring in the 240VAC (or 120VAC if that's your network voltage), it will work great.

The problem is that you still don't have a variable temperature device, with a dimmer you can make it heat up slower, but it will not keep the temperature, if you want to solder some precise stuff you want to have more control over it :)..

I have 2 irons that go directly to mains, one is weller with some weird temperature control (no idea how it works, you put some tip inside and depending on what tip you use it sets on that temperature?! - no regulation on the iron itself) and other that is just a "will get as hot as I can if left unatended" type ... the second one I use with dimmer and it works ok for occasional "solder back adsl wires at father's house as he pulled them out of the wall" and similar repairs .. but I'd never try to solder a qfp with it :)

Re: HAKKO (907ESD) and SOLOMON (SL-10/30) soldering iron dri

Reply #29
I also have a Weller soldering station, of exactly the type you mentioned.  The regulation method is really quite clever- buried in the tip is a permanent magnet that has been formulated to have a Curie point equal to the desired temperature.  In the barrel of the iron is a magnetic (reed?) switch.  When the iron is below the set temperature, the magnet pulls in the switch, energizing the resistance heater.  When the Curie temperature is exceeded, the magnetism goes away, the switch opens, and the iron cools.
Rinse, wash, and repeat!

The nice thing about my dimmer is that I can crank it all the way up to rapidly heat a cold iron, then dial it back to any number of arbitrary marks.  When the heat lost by the iron equals the heat gained by the element, the iron's temperature will stop rising and reach equalibrium.  More power in raises the equalibrium point.  I find this suffices for soldering small items that have a low thermal mass compared to the tip.

Obviously, there are plenty of situations where precise closed-loop control is necessary, but I rarely do that kind of work (mostly because my eyesight is so poor!)