AxxSolder: an open PID soldering station for JBC cartridges
STM32 Based soldering station for JBC cartridges, 9-24 VDC and USB-PD power
At a glance
- What is it?
- An STM32 controller that drives C115, C210 and C245 style JBC cartridges from a 9 to 24 V supply or a USB-C PD source, with automatic power negotiation and per-handle power limits. Both the station and the portable case run the same PCB and firmware.
- Who is it for?
- Adopt AxxSolder if you already own JBC-compatible handles and cartridges and want the sleep and standby behaviour that the firmware provides. Do not adopt it if you want a ready-made product; the board needs a DC rail of 9 to 24 V or a USB-PD source, and a limited supply may reduce output power.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 34 days ago.
- What is it written in?
- Mainly C, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
One PCB and one firmware, two enclosures
AxxSolder exists in two versions that share everything that matters. One is a bench station built around the JBC ADS stand; the other is a portable unit. The README states that both use the same PCB and the same software, so a builder picks an enclosure rather than a product. The CAD directory holds 3D print files for both, and the hardware tree carries a bill of materials with individual component prices.
The alternative to building one is buying. The linked 5Dimensions website sells assembled and tested AxxSolder 3.2 boards with connectors and hardware, which is a useful option for anyone who wants the board without the assembly.
The microcontroller is an STM32G431CBT6, and that choice drives much of what the firmware can do: a PID loop, a colour TFT driver, sleep states and a settings menu, on hardware with enough peripherals to run a heater without a second controller.
Power negotiation changes what the iron can draw
The board accepts either a DC input of 9 to 24 V or a USB-C Power Delivery source. The recommended supply is a Meanwell LRS-150-24, which the README says can power all compatible JBC irons at full power. With a 65 W 20 V USB-PD supply instead, NT115 and T210 handles run at full power and T245 runs at reduced power.
That reduction is not a fixed setting. At start-up the firmware detects the source and negotiates the highest power available, then limits the iron output to the source's maximum and shows the ceiling at the top of the power bar graph on the display. The reasoning behind the recommended supply is about tip grounding, which the README covers in its own section, and that is worth reading before choosing a supply: a supply that is adequate on paper can still behave badly with a cartridge.
This is the feature that makes the USB-C path worth having. A USB-PD charger that negotiates cleanly with the board is a legitimate power source, with the negotiation rather than a fixed resistor telling the controller what it may draw.
Handle identification and the per-handle power ceiling
The controller drives C115, C210 and C245 style cartridges. Two handle sense inputs let it identify which of the NT115, T210 or T245 handles is connected and adjust the maximum output accordingly. Those ceilings are software limits: 130 W for T245, 65 W for T210 and 22 W for NT115.
Software limiting rather than a fixed hardware current sense matters because the same board serves three handle families with different heater resistances. Reading the handle identity and applying a matching ceiling means one PCB can serve all three without rewiring.
Internally the cartridges are simpler than they look. The README says cross sections were cut from a C210 and a C245 to work out how the resistive heater element and the thermocouple are arranged inside, and the cartridge-differences section exists because that arrangement is not identical across the family. Anyone porting this design to a handle outside the JBC family should read that section first.
Standby, sleep and the timers that protect the tip
The state machine follows the vocabulary JBC uses for heat management. Put the handle into the stand, which is wired to the Stand_sense input, and the controller enters Standby mode. The portable version replaces the stand with an aluminium plate inside the case, so resting the cartridge or handle against the plate has the same effect. After ten minutes in Standby the controller moves to Sleep mode and heating is turned off completely.
The encoder is both temperature control and state control. Turning it sets the tip temperature; pressing it puts the controller into Sleep and cuts heating; pressing again wakes it. Two further timers act as safeguards rather than convenience. Thirty minutes in normal running mode triggers sleep. Temperature above 490 degrees is treated as overheating and also forces sleep, to protect the tip.
On the display, sleep mode shows ZzZzZz in the power bar and standby shows STANDBY, which is the quickest way to tell which state the iron is actually in.
Presets, a GPIO for fume extraction, and settings in flash
The two buttons store temperature presets, with 330 and 430 degrees given as the example pair. Both are configurable in the settings menu, and long-pressing a preset button writes the current set temperature into that slot, so a solder you just finished becomes the new one-tap preset.
There is a 3.3 V logic output on GPIO4 that can be configured to go high while the iron is in Run mode. The stated purpose is to switch a fume extractor through a MOSFET or a relay. GPIO4 can be used to control a fume extractor through a MOSFET or relay when the iron is in Run mode.
User settings are stored in non-volatile flash and edited through a settings menu. Persistence across power cycles matters for a tool like this, where the first thing you do on a Monday morning is heat to the temperature you used on Friday.
The display carries the whole diagnostic picture
The screen is a 2 inch 320x240 colour IPS TFT display. What it shows is longer than the list of a normal station display, and the extra fields are the interesting part.
Set temperature and actual temperature are the obvious pair. Current power appears as a bar graph, with the negotiated maximum shown at the top of the bar, so a T245 on a limited USB-PD source visibly sits below its own ceiling. Input voltage, MCU temperature, the detected handle type, the current power source marked as either USB-PD or DC, and the state messages all share the display.
The final entry is a graph of set temperature, current temperature and power over time. That is what makes the PID section observable rather than theoretical: a reviewer can watch the temperature overshoot and settle, and see the power trace that produced it. The README points to separate demo and graphing videos for this.
Calibration, measurement and what the README expects of you
The README's table of contents lists separate sections for temperature calibration, temperature measurement and current measurement, which tells you the design treats those as distinct concerns rather than one calibration pass. Getting a thermocouple reading right on a hand-built board is where most of the debugging effort goes, and the existence of a dedicated current-measurement section suggests the same for the power path.
There is also a disclaimer section. For a project that drives a mains-adjacent power supply and heats metal to several hundred degrees, read it rather than skipping past it. The controller is built around a 24 V DC rail rather than mains directly, which keeps the mains side outside the board, but the safety argument is the author's to make and it is documented.
The repository layout separates concerns cleanly: AxxSolder_firmware, AxxSolder_hardware, CAD, docs, Other and photos, with a GitHub Actions workflow named build-release.yaml producing the firmware.
What the project is not, and what to check first
AxxSolder is a design you build, not firmware you flash onto commercial hardware. There is no list of supported clone stations in the README, and the README describes no path to put this firmware on an existing unit. Support runs through a Discord server linked from the README, which is where build questions go.
Two limits deserve a decision before parts are ordered. The first is the 24 V ceiling on the DC input: if you want a T245 at 130 W, a 65 W 20 V USB-PD supply will not give it to you, and the README says so. The second is the USB-PD negotiation itself, which means a charger that negotiates cleanly is a requirement rather than a preference.
On maintenance, the repository is not archived, the last push was on 2026-09-19, and releases are frequent: v3.8.1 on 2026-06-23 after v3.8.0 on 2026-06-10 and v3.7.0 on 2026-04-20. The licence is GPL-3.0, so if you modify the firmware and want to distribute a board with it, the copyleft terms attach to what you ship.
Editorial conclusion
Adopt AxxSolder if you already own JBC-compatible handles and cartridges and want the sleep and standby behaviour that the firmware provides. Do not adopt it if you want a ready-made product; the board needs a DC rail of 9 to 24 V or a USB-PD source, and a limited supply may reduce output power. Before ordering parts, read the firmware-update and first-start-up sections of the README and check the CAD directory, since the enclosures are 3D printed files rather than off-the-shell parts.
Frequently asked questions
Which JBC handles and cartridges does AxxSolder support?
The controller drives C115, C210 and C245 style cartridges and detects whether the connected handle is an NT115, T210 or T245 through two handle sense inputs. Max output power is software limited to 22 W for NT115, 65 W for T210 and 130 W for T245.
Can AxxSolder run from a USB-C charger?
Yes. It takes either a 9 to 24 V DC input or a USB-C Power Delivery source. With a 65 W 20 V PD supply, NT115 and T210 handles reach full power and T245 is limited, and the negotiated ceiling is shown at the top of the power bar graph.
What puts AxxSolder into standby and sleep mode?
Putting the handle into the stand, wired to Stand_sense, triggers Standby mode; on the portable version an aluminium plate in the case does the same job. After ten minutes in standby it moves to Sleep with heating off. Thirty minutes of normal running or a temperature above 490 degrees also forces sleep.
Is the AxxSolder station and portable version different hardware?
No. The README states that both versions are designed around the same PCB and software, differing in enclosure. The station follows the JBC ADS stand, the portable version uses an internal plate to sense the resting handle, and 3D print files for both are in the CAD directory.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/axxaxx-axxsolder)Was this useful?