Skip to main content
Topic: Really universal soldering controller (Read 796743 times) previous topic - next topic

Re: Really universal soldering controller

Reply #4980
Hi Sparky,

As I said above not sure about this line re-wiring:

>Would it be possible to ask if I have to short any wires such as Vout1- and SenseB since I did not understand this line very well?

WELLER WSP80:
- Outer shell, PTC negative and heater negative (white, black and brown wires) connected to EARTH, Vout1- and SENSEB.,

The DXS80 has no electronics just Fraglie PCB and a little switch for the pump, I do not suggest open USED iron since this might break it if the PCB inside is cooked so do that at your own risk.

Re Firmware would it be possible to share which versions you are using please since I tried it on 5.45 and it failed to compile,

Thanks

Re: Really universal soldering controller

Reply #4981

I do have a stron desire to write some kind of manual for connections and creating profiles, but I am very short of time these days, and this tend to be pretty time consuming.

I would really appreciate if we could have such a manual sometime in the future. Maybe including some tips regarding compiling the software and the necessary prerequisites too......  

Thank you very much for your commitment and continued support for this project.

Re: Really universal soldering controller

Reply #4982
Re Firmware would it be possible to share which versions you are using please since I tried it on 5.45 and it failed to compile,
I am using the latest on github, as always.

What exact error does it give when trying to compile?

Re: Really universal soldering controller

Reply #4983
I require the versions of the software you are using to make compile possible.

I am using the following :
Product Version: MPLAB X IDE v5.45
Java: 1.8.0_222; OpenJDK 64-Bit Server VM 25.222-b10
Runtime: OpenJDK Runtime Environment 1.8.0_222-b10
System: Windows 10 version
===
Compiler : xc32-v3.00-full-install-windows-installer.exe
===
Support for legacy code: pic32 legacy peripheral libraries.zip


Please find the error log attached.

Thanks

Re: Really universal soldering controller

Reply #4984
I require the versions of the software you are using to make compile possible.

MPLAB X IDE v5.45 + MPLAB XC32 Compiler v2.50

Re: Really universal soldering controller

Reply #4985
@tronix you are getting the linker error because you don't have the PRO compiler and you have activated the optimization.
Set the optimization for compiling and linking to none and it will work.

Re: Really universal soldering controller

Reply #4986
Thanks Vulkan, malec and sparky.
The main issue was Windows 10 with all the versions installed still does not work on this bloody OS.
On Windows 7 work on 1st try.

Re DSX80 still saying open sensor so I still believe the wiring is wrong.
Please help me understand this line:

>>Would it be possible to ask if I have to short any wires such as Vout1- and SenseB since I did not understand this line very well?

WELLER WSP80:
- Outer shell, PTC negative and heater negative (white, black and brown wires) connected to EARTH, Vout1- and SENSEB.,

This is my wiring, (* = Switch for vacuum) :

Blue = Vout1+  (6.5R)
Brown * = Vout1-(6.5R)
White = Earth
Red = SenseA (22R)
Black = SenseB  (22R)
Purple * = Switch

You are awesome!!

Re: Really universal soldering controller

Reply #4987
Then, at 0 degrees celsius it should be around 20 ohms. Then c0 should be -20.

c1 = 1/0.077 = 12.98, make it 13.0

The currentA shoud be around 1.8mA, then CBandA shoud be 0 instead of 1, and CurrentA should be 37.

Offset is a bit harder. 1.8mA * 60ohms * 27 = 2.916V after the first amplifier, which means the second one's gain should be around 1, which in terms of iron profile is 256/27 = 9.218 = 9.0, which is too low.

Now instead of using 37 for the current, we use 24, and the current becomes 24*(1.225/100/256) = 1.148mA

Then 60*1.148ma*27.77 = 1,913V after the first amplifier, but this includes also the offset from the 20ohms at 0 degrees. If the offset was not there, the foltage is 40*1.148mA*27.77 = 1,275V. These 1,275V represents 500 degrees at the sensor, and shoud be amplified to 3.0V by the second amplifier, so the gain should be 3/1,275 = 2,353, which in terms of iron profile gain is 2.353/(27/256)=22.

Now the offset in the profile shoule be 20 ohms * 0.001148 * 27.77 * 27*(22/256) * 1024/3 = 505.12 = 505.

So:

CBandA = 0;
CurrentA = 24;
Gain = 22;
Offset = 505;
c0 = -20;
c1 = 13;

This is just an approximation, of course. It takes some experiments until everything gets right.

So some progress.  I got tired of fighting with the hundreds of warnings and linking errors with 5.45 + 3.00 + legacy peripherals, so I installed xc32 1.33 and went ahead and activated the 60 day pro trial.  It complied with no warnings first try of course!  So, I added the following iron.c profile:

Code: [Select]
    {
        0,
        {0x0318},
        "WELLER WP80             ",
        {
            {
                {
                    {                          
                        SENSOR_PTC,             //Type
                        0,                      //HChannel
                        1,                      //InputP
                        0,                      //InputN
                        1,                      //InputInv
                        0,                      //CBandA
                        1,                      //CBandB
                    },
                    24,                         //CurrentA
                    0,                          //CurrentB
                    22,                         //Gain
                    505,                        //Offset
                    {                           //TPoly
                        -20.00,                 //c0
                        13.0000000,             //c1
                        0,                      //c2
                        0,                      //c3
                        0,                      //c4
                        0,                      //c5
                        0,                      //c6
                        0,                      //c7
                        0,                      //c8
                        0                       //c9
                    },
                },
                0,                          //HRCompCurrent
                0,                          //WSLength
                30,                         //PID_DGain
                (UINT16)(0.2 * 32768),      //PID_KP
                (UINT16)(0.008 * 32768),    //PID_KI
                4,                          //PID_OVSGain
                80,                         //PID_PMax
                80                          //PID_PNom
            },
            {{{0}}}
        },
        NULL
    },

Because I already had the 120 and 5.6k resistors soldered to the ID pin, I just swapped them for id1 vs id2.  If I read the resistor excel sheet correctly, that should be a valid combination without using any of the reserved resistor/pin combinations.  And it did work!  At least as far as loading the correct iron profile as "Weller WP80" was displayed.

Then it got interesting.  As soon as unisolder would try to apply power to the iron, it would beep and say power was lost.  It would then come back up, ID the iron, apply power (I could see the power meter flip over to full power for a fraction of a second before it reset), then start all over again.  The input voltage from the 120VA 2 x 12V (in series for 24V x 5A) transformer would dip just a bit on the bench meter every time power was turned on (I think I saw a low of 23.8V).  The 3.3V rail was steady as a rock the whole time.

Just to make sure the heater was ok, I hooked the iron up to one of my bench DC supplier and it was pulling 3.19A at 19.6V, so that sounds about right and is definitely not a short. 

I'll hook it up to the scope tomorrow to get a better "picture" of what is actually going on with supply and 3.3V rails.  Question: How is the powerlost flag determined?  It looks like it is being measured in OnPowerLost ISR, but I haven't figured out exactly what that is actually measuring to trip that flag.

From my multiple reading of the Weller WSP80 iron connections listed in Sparkybg's GITHUB, this is the wiring diagram I have come up with (see attachment).  But I don't trust it at all!

Any suggestions on where to look?

Re: Really universal soldering controller

Reply #4988
Code: [Select]
Hi [quote author=RRRoamer link=msg=73347 date=1621055882]
So some progress.  I got tired of fighting with the hundreds of warnings and linking errors

[/quote]

Hi RRRoamer,

Hope my posts help and the answers maybe more,  if you are like me and installed many versions over each other will not look good. I gave up trying and I can understand your frustration I hate to ask stuff that is not related to Unisolder in here but without knowing which version will work was hard to keep trying.

I have tried your wiring and can confirm it works perfectly with the DSX80 maybe the heater is not the same and indeed the wiring was my problem. The firmware mods suggested by Sparky does not work on the DSX80.

Find attached my testing, It shoots up by 7c while heating and I am super happy with that and I believe these type of heater is normal behaviour.

The wiring issue is solved Thanks!!!

Re: Really universal soldering controller

Reply #4989
For XC32 v3+ to work, -fgnu89-inline have to be added to the xc32-gcc Additional options. Also, in project's firmware.ld file INPUT("processor.o") should be replaced by OPTIONAL("processor.o")

 

Re: Really universal soldering controller

Reply #4990
@RRRoamer  Before doing any testing with the scope: 

Re-wiring make sure the wire you use is good for the current you have mine draw 3.2 amp from cold, I notice you connected the black to Vout1-.

Vout1-&+ should be for the power heater, if the jumper wire you use is good enough for the current then it does not matter since they are shorted.

If the wiring is fine what about using a bench supply with DC will it do the same?


Re: Really universal soldering controller

Reply #4991
@RRRoamer  Before doing any testing with the scope: 

Re-wiring make sure the wire you use is good for the current you have mine draw 3.2 amp from cold, I notice you connected the black to Vout1-.

Vout1-&+ should be for the power heater, if the jumper wire you use is good enough for the current then it does not matter since they are shorted.

If the wiring is fine what about using a bench supply with DC will it do the same?

tronix,

It works fine one the bench supply, but I can only bring it up to 3.19A as that easy to use linear supply is only rated at 30V/3A.  But up to 3.19A/19.7V, everything is behaving normally and the iron gets up to solder melting temperatures in 14-16 seconds or so as expected.

As for the wire, 24 awg is rated for 3.5A for chassis wiring, so the 24 awg jumper wire I am using is more than sufficient (it is larger wire than the cable on the iron).

Re: Really universal soldering controller

Reply #4992
For XC32 v3+ to work, -fgnu89-inline have to be added to the xc32-gcc Additional options. Also, in project's firmware.ld file INPUT("processor.o") should be replaced by OPTIONAL("processor.o")

afedorov,

Thank you!  I will give this a try and see if I can get it compiling with the free xc32 v3.00 version this afternoon and report back.

Re: Really universal soldering controller

Reply #4993
afedorov,

Thank you!  I will give this a try and see if I can get it compiling with the free xc32 v3.00 version this afternoon and report back.

Well, seeing as I AM sitting in front of my computer, I decided to quickly edit the configuration and give it a try.  I'm VERY happy to say those two changes got it working with xc32 v3.00.  Still have lots of warnings due to "void" argument types being passed something else.  But it compiles successfully!  Thank you!

Re: Really universal soldering controller

Reply #4994
tronix,

It works fine one the bench supply,

I am not sure you understand what I mean, give Unisolder 24VC DC and see if you replicate the issue not the iron itself.
RePower supply minimum suggested is 24V @ 5AMP which is 30V @ 4AMP.

Glad you make work the compiler V3 but 2.50 work perfectly with no warnings/errors as suggest by Vulkan35 but as long you see build success I guess it should be fine.

@afedorov Thanks for sharing.