JBC soldering station

Custom soldering station with JBC T245 pen

Similar projects worth following
Original JBC soldering station is one of the best soldering tools, which could be purchased. But when we compare the price of original with the custom one, there are incomparable. So why not take only the pen and make a compromise? Of course, you can still buy the original, but... .

Soldering stations is based on 2-layer PCB, transformer and custom housing (future).

Power supply for pen 24V AC. There was a dilemma between power supply choosing, AC vs DC. There were prose and cons, like simpler switching, speed, saturation, isolation, temperature ... . After sum-up, I have chosen the AC one.

Basic concept:

The soldering pen will be switched via 2 MOS-fets. One for positive and second one for negative part of AC signal. There were multiple options to control MOS-fets, like R+C, another transistor, SSR and so on. I have chosen opto-coupler with integrated MOS-fet driver. Anyway grounds needs to be isolated due to coupling and interference. One option was to chose transformer with two winding or isolated DC/DC converter.

When the pen will be turned off, thermo-electric voltage from thermo-coupler will be amplified and measured via OPAMP. A difference between target and actual value will be controlled over some kind of regulator, like PID.

Device will be controlled from user-space over 2-switches (predefined quick temperature) and encoder (some settings). Response will be showed on OLED display.

Boards are now fabricated.

More details will be specified later, stay tuned... .

  • 1 × JBC T245 soldering pen
  • 1 × PIC32MM0128GP MCU
  • 1 × APV112 Opto and Fiber Optic Semiconductors and ICs / Optocouplers and Optoisolators
  • 1 × AD8226 Amplifier and Linear ICs / Instrumentation Amplifiers
  • 1 × MCP6001 Amplifier and Linear ICs / Operational Amplifiers

View all 7 components

  • Device assembled

    Andy10/26/2019 at 18:16 0 comments

    I was waiting for housing to be fabricated a little bit. This is the main reason, why I didn't post any progress here.

    Meanwhile I was working on different project (CNC). But this is an another story :).

    I think better is to post pictures without useless slacking...

    Hopefully nothing has been broken during final assembling.

    Now I have to wait for encoder knob fabrication. I think, this is the last part of the puzzle, which is missing now. Of course stand is also missing, but this is not major thing, which could breaks soldering station using.

  • SW ready for using

    Andy09/20/2019 at 09:37 0 comments

    I would like sum-up what is currently working and what is the future prune.

    All pending features, which were blocking a real using have been fixed, hopefully. Some of them have been moved into future, because they are only minor improvements, I think.

    Ok, lets go to sum-up (I will re-use TODO list from previous log):
     - sleep mode
      - A sleep temperature is also showed. This is starting after sleeping timeout has been elapsed only when pen is inside a stand. It can be disabled of course.

     - protection handling
      - Added Watchdog and some min/max checking
     - power bar handling
      - If a temperature difference is bigger than zero, power-bar is filled. It also indicates pen heating.

     - pen detection
       - If then pen is missing, logo with crossed pen will be shown. It also turn-off heating. After pen is connected back, it automatically starts heating.

     - °C/F switching
     - I don't want to waste a time with this selection. I don't want to use F for temperature displaying. Maybe I can add it in the feature for some user request.
     - brightness regulation
      -  There are 10 options to set brightness level. Levels are directly represented, so user shouldn't save the parameters to see, how the brightness really looks like.

    Others not previously mentioned improvements:
     - multiplier
       - Temperature could be de/increase not only be 1 degree. It could be changed by 2, 3, ... 10. User doesn't need to go step-by-step if he wants to de/increase temperature eg. 200->300.
     - beep
      - All user inputs could have also sound echo.
     - performance improvements
      - Heating now takes less time. Here I need to experiment a little bit to get more power. But I it's not urgent, so I am shifting it to the future.

    That's it. I would like to say really thanks all people, who helped and gave me some advice for SW/HW improvements.
    I think, that SW part is ready for usage. Now I will move to housing. I have to change my previous drafts a little bit to be matching with actual design.

  • First real heating

    Andy08/15/2019 at 06:54 0 comments

    After some time, I would like to summarize, what was is actually done and bring some info.

    I was struggling with some not working parts like EEPROM, correct temperature measuring, heating... , but finally I have found the root cause and fixed it. Last part, which needs to be clarified, was user interface. I have made some, how to say "preliminary" version, but It looks fine from my side. Maybe I will modified it a little bit afterwards.

    What is actually working/done:
     - User interface
     - buttons handling (rotary encoder, user buttons)
     - temperature measuring (ambient, heating)
     - display controlling (SSD1306)
     - parameters saving (EEPROM)
     - calibration (external more precision temperature meter required)

    What needs to be fixed/done:
     - sleep mode
     - protection handling
     - power bar handling
     - pen detection
     - stand detection
     - °C/F switching
     - brightness regulation

    Here are some videos, how the real prototype looks like.

    Cold heating from ambient to target temperature (25->200)

    User interface, menu handling

    Actually there is still lot of work. Next step is to verify, if heating algorithm is the correct one, or some tuning is required.

  • PCB ready for assembly

    Andy06/04/2019 at 19:42 0 comments

    Magic happened and PCBs are at home, finally... .

    On the left side is version 1.0 and on the right side is new PCB version 1.1 .

    Some components has been taken from previous version. Finally "Hello world!" (LEDblinking) is working as well.
    Now I have to buy some missing components. After that I will continue in assembling.

  • Moving forward

    Andy05/13/2019 at 06:56 0 comments

    First, I would like to say sorry for not posting any progress here.

    I was moving my home laboratory to new location. More space, more gadgets, new ideas ;).

    Previous concept has some issues. Like zero-cross detection was not working like expectations. (I have already published working idea).
    Another problem was with temperature measuring. Maybe you know that, temperature is changing in uV. Previous solution has lot of noise on AMP inputs. So I have modified the measuring technique a little bit. Now I am measuring it like a differential. So noise is on the both of inputs and it equals to quite good signal.

    Last problem was with the switching itself. I was noticed on this problem by @Attila Kovács . He gave me a lot of advice, which I would like to say, thank you.

    After some modifications I have finished a new PCB design v1.1. (I hope, this is the last one :) ).

    Now I have to wait for fabrication... .

  • Some progress

    Andy10/01/2018 at 18:10 2 comments

    Sorry for the longer delay between posting some progress. I didn't have much time for continuing in this project. Of course there were some tryings and strugglings with zero-cross detection.

    First idea was, to use for zero-cross detection basic external interrupt. I used signal generator for testing. Input signal was sinus @50Hz. When I connected the signal to MCU, there were some delay between reaching the zero level and interrupt itself. MCU was running with 8MHz internal oscillator. Delay was  ~4ms, what is unacceptable (1/50Hz = 25ms). I have tested it on 8-bit MCU, to be sure, if there is something wrong. But results were the same. "Maybe there is a problem with internal oscillator". So I have decided to use external one, but without success.

    So I have switched the input signal to square and it was working well. After some analysis (including datasheet) I have figured out, that is missing "Schmidt circuit" on MCU's inputs. The edge of input sinus signal is not so perpendicular as expectations. It means that, external interrupt mechanism can't reach this edge.

    Finally I have the solution, how to fix this problem. I didn't want to use 4-way rectifier and stuff like that. So a comparator is the right way. But, which one to use, external or internal... . External has some advantages, so I decided to use this one.
    I have made only simulation, but it should work ;)

  • OLED SSD1306 is working...

    Andy07/24/2018 at 20:06 0 comments

    It was funny to port i2c driver from 8-bit to 32-bit MCU. Lot of changes, but it was a big step forward. So seems to be that,  I have successfully ported my previously used OLED SSD1306 driver.

    It just counts from 0-300, but image was stripped ;). I guess, for basic presentation is enough.

    There is a lot of TODO points, but next step will be displaying value based on encoder rotation... .

  • Prototype assembling

    Andy07/22/2018 at 14:23 0 comments

    I have had some time to assembly a first prototype. There is a minimum components to verify basic functionality.

    Now is time to check if everything is working in quick steps.

    Hello world is seems to be working as well ;)

  • PCBs arrived

    Andy07/15/2018 at 17:58 0 comments

    This week have PCBs arrived. I have only time to check them, but there looks pretty nice :).

    Now is time to assembly a first prototype. I think, I will do it during the next weekend.

  • Case

    Andy06/23/2018 at 15:31 0 comments

    I have had some time during waiting to PCB. So I have made some first lookup at the housing. 

    I have to think about final position of missing components. There is a several option to place the pen socket, like on the front or back. Same problem with switch :). Position of PCB with enc, switches and display is I think the final one. Current dimension of case is 100x126x63mm. 

    Of course this is still WIP, so final size could be changed.

View all 10 project logs

Enjoy this project?




[this comment has been deleted]

Andy wrote 06/24/2018 at 07:43 point

Yes, I think so. I have used a lot of projects for inspiration. Of course, Unisolder was one of these. It has complicated design due to universality, but I don't need this feature. I would like to use it only with one pen.

  Are you sure? yes | no

Andy wrote 06/25/2018 at 06:33 point

I don't see any 3 models :). There are 2x PCB and 1x case, are these 3 models which you mean?

- PCBs were created in Eagle: gerber > EasyEDA > images

- case: SolidWorks with custom models

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates