Skip to content

Commit

Permalink
Custom tip type selection (#1977)
Browse files Browse the repository at this point in the history
* Minor doc updates

* pydoc

* Draft tip selection menu

* Start linking in manual tip resistance

* Enable on Pinecilv1 / TS10x

* Fixup drawing tip type

* Update Settings.cpp

* Rename JBC type

* Add translations

* Handle one tip type

* Refactor header includes

* Fixup translation_IT.json

* Fixing up includes

* Format

* Apply suggestions from code review

Co-authored-by: discip <53649486+discip@users.noreply.github.com>

* Update Documentation/Hardware.md

Co-authored-by: discip <53649486+discip@users.noreply.github.com>

---------

Co-authored-by: = <=>
Co-authored-by: discip <53649486+discip@users.noreply.github.com>
  • Loading branch information
Ralim and discip authored Nov 1, 2024
1 parent 150aa0d commit a0a779f
Show file tree
Hide file tree
Showing 61 changed files with 1,074 additions and 108 deletions.
6 changes: 3 additions & 3 deletions Documentation/HallSensor.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

## Sleep Mode Menu

In Sleep mode, the iron automatically lowers the temperature to 150 °C (default). This default was chosen as it is just below the melting point of many solders. A stand-by lower temperature helps reduce the rate of oxidation and prevents damage to iron tips. In general, when not using the iron, unplug it or let it sleep to increase the longevity of replaceable tips. The default sleep temperature can be customized.
In sleep mode, the iron automatically lowers the temperature to 150°C (default). This default setting was chosen as it is just below the melting point of a wide range of solders. A lower standby temperature helps reduce the oxidation rate and prevent damage to the soldering tips. As a general rule, when not in use, unplug the unit or let it go into sleep mode to extend the life of the replaceable tips. The default sleep temperature can be adjusted to your preference.

Simply moving the iron or pressing any button will wake it back up into soldering mode.
Simply moving the iron or pressing any button will wake it back up into soldering mode. The sensitivity is adjustable. It is recommended to adjust this to suit your environment so that it reliably stays in sleep mode when not in use, but does not go into sleep mode when in use. (This may vary depending on the amount of movement during soldering.)

### Optional Hall Effect Feature (Pinecil only):
### Optional Hall Effect Feature (Pinecil (v1/v2) only):

Inside the [Sleep Menu](https://ralim.github.io/IronOS/Settings/#setting-sleep-temp) is an additional type of sleep setting. Pinecil has an unpopulated footprint (**U14**) for a hall effect sensor, Silicon Labs **Si7210-B-00-IV**. After installing the hall effect sensor (HES), it is possible to auto-trigger Pinecil to enter sleep mode when it enters the stand, and _Zzzz_ will appear (or text in detailed mode). This could be a fun enhancement for any Pinecil and adds a feature typically only found in more expensive high-end irons. The HES is available at many electronic stores for ~$2-$6.

Expand Down
45 changes: 36 additions & 9 deletions Documentation/Hardware.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,30 @@
## Notes on the various supported hardware

Below are short summaries / notes around the hardware. This is not an in-depth comparison of the features of the units. Please do your own research before purchasing.

Due to descisions out of our control, Miniware no longer provides source-code/schematics/support for any open source firmware on their devices. This does mean that only (TS100/TS80/TS80P) are "open" to any extent. TS80P is pushing that as it was never open at all but just happens to be very close to the TS80. While this generally shouldn't affect the performance of the device, it does mean that their newer products can be slow to be supported or some issues are harder to resolve.

Sequre has so far been supportive of the S60 by providing schematics.

The Pine64 units (Pinecil) are schematics-available (i.e you can download them on the Pine64 Wiki). They are currently the only vendor that has provided financial support of the project. They are also the only vendor that allows contact directly to the engineering teams for hardware issues. This results in generally better support for these devices. It does **not** mean that this firmware is designed around them, but it does help however that they are designed with this firmware in mind as Ralim talks to them. Where possible features are designed to work across all devices but the time for support may vary depending on the hardware and its quirks.


## A quick note on power supplies

For all devices listed **except** the MHP30:

These soldering irons do *NOT* contain DC/DC converters.
This means that your power at the tip is a function of the supplied voltage. Just because the iron "supports" running at a wide range of voltages, you should always use a voltage near the upper limit where possible.
It is highly recommended to use a PD adapter where possible as this allows the iron to _know_ the limitations of your supply.
The marked irons can only turn the tip on and off in software, this means that they can't control the maximum power drawn from the supply. This is why when using PD the iron may select a lower voltage than your power supplies maximum. This is to prevent your power supply failing from over current. For more information about power management underhood, please, [see the related documentation section](https://ralim.github.io/IronOS/Power/).

For the MHP30, it contains a buck DC/DC, which means it can utilise most power supplies fairly well, but you should still aim for highest voltage that is reasonable to use.


### TS100

TS100\* is a neat soldering iron:
The TS100 was the first supported soldering iron, and is generally a very capable device.
Its now generally not reccomended to buy new as other devices have all of its features and more, and can often be the same price or cheaper. It's still fully supported though, nothing will be taken away from it.

- can run from 9-25V DC;
- provides a power range that is determined by the input voltage;
Expand All @@ -12,23 +33,32 @@ TS100\* is a neat soldering iron:

![](https://brushlesswhoop.com/images/ts100-og.jpg)

### TS101

The TS101 is the direct replacement of the TS100 with the same tip compatibility.
It adds a spring pressure tip holding mechanism instead of using a screw so tips are easier to swap on the fly (But are held less securely and can pull out depending on the use case). It adds USB-C PD support and the hardware is compatible with 28V EPR power supplies (under both IronOS and official firmware).

It unfortunately uses an STM32 clone MCU with quirks, so performance of the screen isn't as good as it could be but its perfectly usable. The bootloader for programming is the biggest weakness of this device and programming can be a pain. Fortunately, IronOS is relatively stable feature wise, so you shouldn't need to update the device often.

The Miniware bootup logo is burned into their bootloader, so IronOS cant remove this. IronOS can show your own logo when it starts however. There are quirks to loading a logo on this device, so be sure to read the documentation if you are coming from other devices.

### TS80

TS80\* is a successor to TS100:
TS80 is a successor to TS100, it moves to custom smaller tips that perform better at lower wattages. It is optimised for a 9V/2A Quick Charge 3.0 power supply. This is commonly found on older power banks on the USB-A port.
It does **not** support USB-PD and will not work when powered from a USB-C power supply in most cases.

- uses _Quick Charge 3.0_ / _QC3_ capable charger only (18W max);
- doesn't support PD as it is not designed on the hardware level;
- the original firmware can be found [here](https://e-design.com.cn/en/NewsDetail/4203645.html)([mirror backup](https://github.com/Ralim/IronOS-Meta/tree/main/Firmware/Miniware)).

![](https://core-electronics.com.au/media/catalog/product/4/2/4244-01.jpg)
![Image of TS80](https://core-electronics.com.au/media/catalog/product/4/2/4244-01.jpg)


### TS80P

TS80P\* is a successor to TS80:
The TS80P is the direct successor to the TS80 and essentially what the TS80 should have been from its debut. It is nearly identical except it adds USB-PD support for far better compatibility with modern power banks as well as a faster tip removal method.

- supports _Quick Charge 3.0_ (_QC3_: 9V/3A, 18W max);
- supports _Quick Charge 3.0_ (_QC3_: 9V/2A,12V/1.5A 18W max);
- supports _Power Delivery_ (_PD_: 9V/3A & 12V/3A, 30W max)\*\*;
- the original firmware can be found [here](https://e-design.com.cn/en/NewsDetail/4203645.html)([mirror backup](https://github.com/Ralim/IronOS-Meta/tree/main/Firmware/Miniware)).

Expand All @@ -50,14 +80,11 @@ MHP30 is a **M**ini **H**ot **P**late:

### Pinecil

Pincecil\*:
Pincecil:

- first model of soldering iron from PINE64;
- the default firmware can be found [here](https://files.pine64.org/os/Pinecil/Pinecil_firmware_20201115.zip).

![](https://pine64.com/wp-content/uploads/2020/11/pinecil-bb2-04.jpg?v=0446c16e2e66)


\*: Please note: these soldering irons do *NOT* contain DC/DC converters. This means that your power at the tip is a function of the supplied voltage. Just because the iron "supports" running at a wide range of voltages, you should always use a voltage near the upper limit where possible. It is highly recommended to use a PD adapter where possible as this allows the iron to _know_ the limitations of your supply. The marked irons can only turn the tip on and off in software, this means that they can't control the maximum power drawn from the supply. This is why when using PD the iron may select a lower voltage than your power supplies maximum. This is to prevent your power supply failing from over current. For more information about power management underhood, please, [see the related documentation section](https://ralim.github.io/IronOS/Power/).


1 change: 0 additions & 1 deletion Env.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
version: "3"
name: "ironos"
services:
builder:
Expand Down
6 changes: 3 additions & 3 deletions Translations/make_translation.py
Original file line number Diff line number Diff line change
Expand Up @@ -203,9 +203,9 @@ def get_letter_counts(defs: dict, lang: dict, build_version: str) -> Dict:
"""From the source definitions, language file and build version; calculates the ranked symbol list
Args:
defs (dict): _description_
lang (dict): _description_
build_version (str): _description_
defs (dict): Definitions
lang (dict): Language lookup
build_version (str): The build version id to ensure its letters are included
Returns:
Dict: _description_
Expand Down
22 changes: 22 additions & 0 deletions Translations/translation_BE.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Бяспечны\nрэжым"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Мова:\n BY Беларуская",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
22 changes: 22 additions & 0 deletions Translations/translation_BG.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Вкл.без\nискане"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Език:\n BG Български",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
22 changes: 22 additions & 0 deletions Translations/translation_CS.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Safe\nMode"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Jazyk:\n CS Český",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
22 changes: 22 additions & 0 deletions Translations/translation_DA.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Safe\nMode"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Sprog:\n DA Dansk",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
24 changes: 23 additions & 1 deletion Translations/translation_DE.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Safe\nMode"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -235,7 +253,7 @@
},
"HallEffSleepTimeout": {
"displayText": "HallSensor\nSleepTime",
"description": "Das Intervall vor dem Start des \"Ruhemodus\", wenn der Hall-Effekt den Schwellenwert überschreitet"
"description": "Dauer vor dem Wechsel in den \"Ruhemodus\", nachdem die Hall-Sonde auslöst"
},
"TemperatureUnit": {
"displayText": "Temperatur-\neinheit",
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Sprache:\n DE Deutsch",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
22 changes: 22 additions & 0 deletions Translations/translation_EL.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Safe\nMode"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Γλώσσα:\n EL Ελληνικά",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
22 changes: 22 additions & 0 deletions Translations/translation_EN.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,24 @@
},
"USBPDModeSafe": {
"displayText": "Safe\nMode"
},
"TipTypeAuto": {
"displayText": "Auto\nSense"
},
"TipTypeT12Long": {
"displayText": "TS100\nLong"
},
"TipTypeT12Short": {
"displayText": "Pine\nShort"
},
"TipTypeT12PTS": {
"displayText": "PTS\n200"
},
"TipTypeTS80": {
"displayText": "TS80\n"
},
"TipTypeJBCC210": {
"displayText": "JBC\nC210"
}
},
"menuOptions": {
Expand Down Expand Up @@ -320,6 +338,10 @@
"LanguageSwitch": {
"displayText": "Language:\n EN English",
"description": ""
},
"SolderingTipType": {
"displayText": "Soldering\nTip Type",
"description": "Select the tip type fitted"
}
}
}
Loading

0 comments on commit a0a779f

Please sign in to comment.