Skip to content

Commit

Permalink
README update (#1991)
Browse files Browse the repository at this point in the history
* README update

* README update

* README update

* README update

* README update

* README update

* README update

* README update

* README update

* README update

* README update
  • Loading branch information
ia authored Nov 9, 2024
1 parent 21ecc15 commit 79c12a5
Showing 1 changed file with 68 additions and 50 deletions.
118 changes: 68 additions & 50 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,25 @@
[![Contributors](https://img.shields.io/github/contributors-anon/ralim/ironos?color=blue&style=flat)](https://github.com/Ralim/IronOS/graphs/contributors)
[![Latest Release](https://img.shields.io/github/v/release/ralim/IronOS)](https://github.com/Ralim/IronOS/releases/latest)

# IronOS - Flexible Soldering iron control Firmware
# IronOS - Open Source Flexible Firmware for Soldering Hardware

_This repository was formerly known as TS100, it's the same great code. Just with more supported devices._

Originally conceived as an alternative firmware for the TS100, this firmware has evolved into a complex soldering iron control firmware.
Originally conceived as an alternative firmware for the _TS100_, this firmware has evolved into a complex soldering hardware control firmware.

The firmware implements all of the standard features of a 'smart' soldering iron, with lots of little extras and tweaks.
I highly recommend reading the installation guide fully when installing on your iron. And after install just explore the settings menu.
The firmware implements all of the standard features of a _smart_ soldering hardware, with lots of little extras and tweaks.
I highly recommend reading the installation guide fully when installing on your device. And after install just explore the settings menu.

For soldering irons that are designed to be powered by 'smart' power sources (PD and QC), the firmware supports settings around the negotiated power and voltage.
For soldering irons that are designed to be powered by batteries (TS100 & Pinecil), settings for a cutoff voltage for battery protection are supported.
For soldering hardware that are designed to be powered by _smart_ power sources such as _PD_ or _QC_, the firmware supports settings around the negotiated power and voltage.
For soldering hardware that are designed to be powered by batteries (_TS100_ & _Pinecil_), settings for a cutoff voltage for battery protection are supported.

Currently **31** languages are supported. When downloading the firmware for your soldering iron, take note of the language code in the file name.
Currently **31** languages are supported. When downloading the firmware for your soldering hardware, take note of the _language code_ in the file name.

This project is considered feature complete for use as a soldering iron, _so please suggest any feature improvements you would like!_
This project is considered feature complete for use on a daily basis, _so please suggest any feature improvements you would like!_

_This firmware does **NOT** support the USB port while running for changing settings. This is done through the onscreen menu only. Logos are edited on a computer and flashed like firmware._
_This firmware does **NOT** support the USB port while running for changing settings (this is done through the onscreen menu only). Custom logos are edited on a computer and flashed in the same manner as firmware._

## Supported Hardware

| Device | DC | QC | PD | EPR | BLE | Tip Sense | Recommended Purchase | Notes |
| :------------: | :-: | :-: | :-: | :-: | :-: | :-------: | :------------------: | :-------------------------------------: |
Expand All @@ -34,23 +36,21 @@ _This firmware does **NOT** support the USB port while running for changing sett
| Miniware TS100 | ✔️ ||||||\*\* | |
| Miniware TS80 || ✔️ |||| N/A |\*\*\* | |

_Tip Sense_ refers to the device being able to choose between the 'usual' TS100 or Hakko T12 style tips and Pine64's custom shorter tips which have lower resistance and allow for more power. This is N/A for TS80/TS80P as there is only one model of tip for them.
_Tip Sense_ refers to the device being able to choose between the _"regular"_ _TS100_ or _Hakko T12 style_ tips and _Pine64_'s custom shorter tips which have lower resistance and allow for more power. This is N/A for _TS80(P)_ as there is only one model of tip for them.

_Recommended Purchase_ is only referring to if you are buying a **new** device. Of course all the devices listed are supported and will work excellently for years to come.

The TS101 and S60 feature a higher resolution OLED than other devices. Work is ongoing to support this fully, for now a cropped view is usable.
The _TS101_ & _S60(P)_ irons and _MHP30_ & _T55_ plates feature a higher resolution OLED than other devices. Work is ongoing to support this fully, for now a cropped view is usable.

\*PinecilV1 stopped being manufactured a long time ago now, all models for sale online are generally clones (or old stock). Vendors are trying to sell these for more than Pine64 sells the V2 for now. Thus the V1 is **_no longer recommended_**.
\* _PinecilV1_ stopped being manufactured a long time ago now, all models for sale online are generally clones (or old stock). Vendors are trying to sell these for more than _Pine64_ sells the _V2_ for now. Thus the _V1_ is **_no longer recommended_**.

\*\*Please note that Miniware started shipping TS100's using cloned STM32 Chips. While these do work with IronOS, their DFU bootloader works terribly, and it is hard to get it to successfully flash larger firmware images like IronOS without timing out. This is the main reason why the TS100 is **_no longer recommended_**.
\*\* Please note that _Miniware_ started shipping _TS100_'s using **cloned STM32 chips**. While these do work with _IronOS_, their **DFU bootloader** works terribly, and it is hard to get it to successfully flash larger firmware images like _IronOS_ without timing out. This is the main reason why the _TS100_ is **_no longer recommended_**.

\*\*\*TS80 is replaced by TS80P. Production ramped down a long time ago and it's just existing stock clearing the system. It's marked not recommended being optimistic that people might pause and buy the far superior TS80P instead. This is the main reason why the TS80 is **_no longer recommended_**.
\*\*\* _TS80_ is replaced by _TS80P_. Production ramped down a long time ago and it's just existing stock clearing the system. It's marked not recommended being optimistic that people might pause and buy the far superior _TS80P_ instead. This is the main reason why the _TS80_ is **_no longer recommended_**.

## Getting Started

To get started with IronOS firmware, please jump to [Getting Started Guide](https://ralim.github.io/IronOS/GettingStarted/).
But the [TL;DR](https://www.merriam-webster.com/dictionary/TL%3BDR) is to press the button near the front of the iron to heat up. Use the button near the back of the iron to enter the settings menu.
Long hold the rear button in soldering mode to exit back to the start screen.
To get started with _IronOS firmware_, please jump to [Getting Started Guide](https://ralim.github.io/IronOS/GettingStarted/).

## Installation

Expand All @@ -64,47 +64,65 @@ For notes on installation for your device, please refer to the flashing guide fo

## Key Features

- PID style iron temperature control
- Automatic sleep with selectable sensitivity
- Motion wake support
- All settings exposed in the intuitive menu
- (TS100) Set a voltage lower limit for Lithium batteries so you don't kill your battery pack
- (TS80) Set 18 W or 24 W settings for your power bank
- (TS80P) Automatically negotiates appropriate PD and falls back to QC mode like TS80
- (Pinecil) Supports all 3 power modes (PD, QC, DC In).
- (Pinecilv2) Supports USB-PD EPR for 28V operation.
- Improved readability Fonts, supporting multiple languages
- Use hardware features to improve reliability
- Can disable movement detection if desired
- Boost mode lets you temporarily change the temperature when soldering (i.e. raise the temperature for short periods)
- (TS100/Pinecil) Battery charge level indicator if power source set to a lipo cell count
- (TS80/TS80P/Pinecil) Power bank operating voltage is displayed
- [Custom boot up logo support](https://ralim.github.io/IronOS/Logo/)[^bootlogo]
- Automatic LCD rotation based on the orientation
- PID style iron temperature control;
- automatic sleep with selectable sensitivity;
- adjustable & tweakable motion wake support;
- all settings exposed in the intuitive menu;
- (_TS100_) set a voltage lower limit for Lithium batteries so you don't kill your battery pack;
- (_TS80_) set 18W or 24W settings for your power bank;
- (_TS80P_) automatically negotiates appropriate PD and falls back to QC mode like _TS80_;
- (_Pinecil_) supports all 3 power modes (PD, QC, DC In);
- (_Pinecilv2_) supports _USB-PD EPR_ for **28V** operation;
- improved readability Fonts, supporting multiple languages;
- use hardware features to improve reliability;
- boost mode lets you temporarily change the temperature when soldering (i.e. raise the temperature for short periods);
- (_TS100_/_Pinecil_) battery charge level indicator if power source set to a LiPo cell count;
- (_TS80_/_TS80P_/_Pinecil_) power bank operating voltage is displayed;
- [custom boot up logo support](https://ralim.github.io/IronOS/Logo/)[^bootlogo];
- automatic LCD rotation based on the orientation;
- ... and many many other cool & hackable features![^changelog]

[^bootlogo]:
**BOOTUP LOGO NOTICE**:
IronOS supports both a bootup logo _AND_ bootup animations.
However, _**they are no longer included in this repo**_.
**Please, [read the docs](https://ralim.github.io/IronOS/Logo/) for more information**.

## Menu System
[^changelog]:
[See the full changelog here](https://ralim.github.io/IronOS/History).

## Basic Control

Supported device is controlled by two buttons which can be pressed in the following ways:
- short: ~1 second or so;
- long: more than 1 second;
- both (press & hold both of them together).

This new firmware uses a new menu system to allow access to the settings on the device.
When on the main screen and having the tip plugged in, the unit shows a pair of prompts for the two most common operations.
Available buttons are:
- `+/A` button: near the front closer to the tip (for irons) or on the left side of the device (for plates);
- `-/B` button: near the back far from the tip (for irons) or on the right side of the device (for plates).

- Pressing the button near the tip enters the _soldering mode_
- Pressing the button near the USB end enters the _settings menu_
- When not in _soldering mode_, holding down the button near the tip will enter _soldering temperature adjust mode_ (This is the same as the one in the _soldering mode_, but allows to adjust the temperature before heating up), in _soldering mode_ however this will activate _boost mode_ as long as you hold down the button.
- Holding down the button near the USB end will show the _[debug menu](https://ralim.github.io/IronOS/DebugMenu/)._ In _soldering mode_ this ends the heating.
After powering on the device for the first time with _IronOS_ installed and having the tip/plate plugged in, on the main menu in _standby mode_ the unit shows a pair of prompts for the two most common operations:
- pressing the `+/A` button enters the _soldering mode_;
- pressing the `-/B` button enters the _settings menu_;
- in _soldering mode_:
- short press of `+/A` / `-/B` buttons changes the soldering temperature;
- long press of the `+/A` button enables _boost mode_ (increasing soldering temperature to the adjustable setting as long as the button is pressed);
- long press of the `-/B` button enters _standby mode_ and stops heating;
- in _standby mode_:
- long press of the `+/A` button enters _soldering temperature adjust mode_ (the same as the one in the _soldering mode_, but allows to adjust the temperature before heating up);
- long hold of the `-/B` button enters the [_debug menu_](https://ralim.github.io/IronOS/DebugMenu/);
- in _menu mode_ (to make it short here):
- `-/B` scrolls & cycles through menus and submenus;
- `-/A` enters to menu & submenu settings or changes their values if they are activated already.

Operation details are over in the [Menu information.](https://ralim.github.io/IronOS/Menu/)
Additional details are described in the [menu information](https://ralim.github.io/IronOS/Menu/).

## Translations

Is your preferred language missing localisation of some of the text?
Translations are stored as `json` files in the Translations folder.
PR's are loved and accepted to enhance the firmware.
Translations are stored as `json` files in the `Translations` folder.
_Pull requests_ are loved and accepted to enhance the firmware.

## Thanks

Expand All @@ -129,13 +147,13 @@ Especially to the following users, who have helped in various ways that are mass

Plus the huge number of people who have contributed translations, your effort is massively appreciated.

## Licence
## License

The code created by the community is GNU GPLv3. Unless noted elsewhere.
Other components such as FreeRTOS/USB-PD have their own licence.
The code created by the community is covered by the [GNU GPLv3](https://www.gnu.org/licenses/gpl-3.0.html#license-text) license **unless noted elsewhere**.
Other components such as _FreeRTOS_ and _USB-PD_ have their own licenses.

## Commercial Use

This software is provided as-is, so I cannot provide any commercial support for the firmware.
However, you are more than welcome to distribute links to the firmware or provide irons with this software on them.
Please do not re-host the files, but rather link to this page, so that there are no old versions of the firmware scattered around.
This software is provided "AS IS", so I cannot provide any commercial support for the firmware.
However, you are more than welcome to distribute links to the firmware or provide hardware with this firmware.
**Please do not re-host the files, but rather link to this page, so that there are no old versions of the firmware scattered around**.

0 comments on commit 79c12a5

Please sign in to comment.