diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..6bc34713 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,32 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: '' +assignees: Ralim + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + + +**Details on your device:** + - Device: [e.g. TS80/Pinecil etc] + - Release: [eg 2.15.40087E6] + - Power adapter being used: + +Note you can grab these from the debug menu. + +**Additional context** +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/everything-else--questions--notes-etc-.md b/.github/ISSUE_TEMPLATE/everything-else--questions--notes-etc-.md new file mode 100644 index 00000000..440f1f67 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/everything-else--questions--notes-etc-.md @@ -0,0 +1,10 @@ +--- +name: Everything else (Questions, notes etc) +about: For remarking questions or notes +title: '' +labels: '' +assignees: '' + +--- + +**Questions are preferred to be kept to the discussions tab where possible, but otherwise go for it. be polite and as clear as possible.** diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..259c5294 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: enhancement +assignees: Ralim + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/Documentation/Flashing.md b/Documentation/Flashing.md index 310716fc..b2f389e4 100644 --- a/Documentation/Flashing.md +++ b/Documentation/Flashing.md @@ -20,11 +20,9 @@ Then this works the same as a production release (use the correct file). ## Miniware irons (TS100, TS80, TS80P) -This is completely safe, but if it goes wrong just put the .hex file from the official website onto the unit and you're back to the old firmware. Downloads for the hex files to flash are available on the [releases page.](https://github.com/Ralim/IronOS/releases) The file you want is called *(MODEL)_EN.hex* unless you want the translations, they are (MODEL)_*language short name*.hex. Where (MODEL) is either TS100 or TS80. - -Officially the bootloader on the iron only works under Windows (use the built-in File Explorer, as alternative file managers or copy handlers like Teracopy will fail). However, users have reported that it does work under Mac, and can be made to work under Linux *sometimes*. Details over on the [wiki page](https://github.com/Ralim/ts100/wiki/Upgrading-Firmware). - +This is completely safe, but if it goes wrong just put the .hex file from the official website onto the unit and you're back to the old firmware. Downloads for the hex files to flash are available on the [releases page.](https://github.com/Ralim/IronOS/releases) The file you want is called _(MODEL)\_EN.hex_ unless you want the translations, they are (MODEL)\__language short name_.hex. Where (MODEL) is either TS100 or TS80. +Officially the bootloader on the iron only works under Windows (use the built-in File Explorer, as alternative file managers or copy handlers like Teracopy will fail). However, users have reported that it does work under Mac, and can be made to work under Linux _sometimes_. Details over on the [wiki page](https://github.com/Ralim/ts100/wiki/Upgrading-Firmware). 1. Hold the button closest to the tip, and plug in the USB to the computer. 2. The unit will appear as a USB drive. @@ -35,8 +33,6 @@ Officially the bootloader on the iron only works under Windows (use the built-in 7. If it didn't work the first time, try copying the file again without disconnecting the iron, often it will work on the second shot. 8. Disconnect the USB and power up the iron. You're good to go. - - For the more adventurous out there, you can also load this firmware onto the device using an SWD programmer. On the bottom of the MCU riser PCB, there are 4 pads for programming. On v2.51A PCB revision `USB_D+` is shorted to `SWDIO` and `USB_D-` is shorted to `SWCLK` so debugging works without disassembly (attach while staying in the bootloader). Installing [dapboot from eDesignOSS](https://github.com/eDesignOSS/dapboot) (`make TARGET=TS100 -C src`) is recommended as it allows reliable flashing of binary files with [dfu-util](http://dfu-util.sourceforge.net/). @@ -45,7 +41,6 @@ There is a complete device flash backup included in this repository. (Note this For the TS80 the SWD pins are used for the QC negotiation, so you can actually connect to the SWD power via the USB connector. - # Mac sgr1ff1n (Shane) commented in [issue 11](https://github.com/Ralim/ts100/issues/11) that upgrading worked on their Mac as per normal: @@ -61,10 +56,10 @@ While in past there were reports of unreliable upgrades, the consensus in [issue If you want to do it manually (or if the script does not work for some reason) the general procedure is the same as for Windows, the differences are in the way to mount the unit and copy the firmware. Remember that after flashing, the firmware filename will have changed to end in `.RDY` or `.ERR` or `.NOT` and only `.RDY` means the flashing was successful! -* The unit has to be mounted as ```msdos``` type (thanks @balrog-kun for having spotted it). You may disable automount, but unmounting the automounted drive and remounting as `msdos` works fine. You do not need to turn off automounting, but you do need to unmount the device with `umount`. -* It is recommended to use an all-caps filename for the firmware, even if successful flashing were done with lower case names. -* Avoid USB hubs, plug directly in your computer. -* If it fails, try again several times without unplugging. Just let it remount. +- The unit has to be mounted as `msdos` type (thanks @balrog-kun for having spotted it). You may disable automount, but unmounting the automounted drive and remounting as `msdos` works fine. You do not need to turn off automounting, but you do need to unmount the device with `umount`. +- It is recommended to use an all-caps filename for the firmware, even if successful flashing were done with lower case names. +- Avoid USB hubs, plug directly in your computer. +- If it fails, try again several times without unplugging. Just let it remount. Example, to be run as root, once the unit has been plugged in DFU mode and auto-mounted: @@ -85,18 +80,18 @@ rmdir /tmp/mntdfu Device will reboot and automount will rerun if not disabled. Check the extension of your firmware, it should be `.RDY` now. - ## Pinecil (Pine64) The MCU used in the Pinecil supports usb-dfu. To enter DFU mode, hold the button at the back of the iron while connecting to usb over usb-c. Generally all usb controllers work, but some hubs have issues so avoiding hubs may be best. Once the device is connected while holding the button, the screen will stay **off**. -This is normal, and then you can use the appropriate tool to load the .hex or .bin file as per your OS. +This is normal, and then you can use the appropriate tool to load the .hex or .bin file as per your OS. -You can also refer to the Pine64 [Wiki](https://wiki.pine64.org/wiki/Pinecil) +You can also refer to the Pine64 [Wiki](https://wiki.pine64.org/wiki/Pinecil). ### Linux and Mac + Using `dfu-util` you can flash the firmware using a command line as such: ``` @@ -107,6 +102,8 @@ dfu-util -d 28e9:0189 -a 0 -D Pinecil_EN.bin -s 0x08000000:mass-erase:force For windows the easiest tool to use is the vendors gui tool from [here](http://www.gd32mcu.com/download/down/document_id/176/path_type/1) Should the link break, its called "GD32 MCU Dfu Tool" and can be grabbed from http://www.gd32mcu.com/en/download/ +You will also need the matching drivers from [here](http://www.gd32mcu.com/download/down/document_id/244/path_type/1) installed if you have not used gigadevice parts before. +These are called "GD32 Dfu Drivers" if the link breaks. ### FAQ @@ -119,7 +116,7 @@ First, try just copying the file a second time. 1. Attach the iron in DFU mode 2. Copy the hex file to the device 3. The device disconnects and connects with the `.ERR` file -4. Copy the same hex file again **DO NOT TRY AND DELETE THE OLD ONE** +4. Copy the same hex file again **DO NOT TRY AND DELETE THE OLD ONE** 5. The device will disconnect and reconnect again 6. The device _should_ now have the `.RDY` file 7. Your done. diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md deleted file mode 100644 index 05250381..00000000 --- a/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,31 +0,0 @@ -Please edit this template and fill out all the information you can (where relevant). Failure to provide essential information can delay the response you receive. - -_This is a [Bug/Feature Request/Question/Complaint]_ - -* **I have** - - [ ] Searched previous issues - - [ ] This is in _this_ firmware, not vendor "offical" firmware - - [ ] This is not a bug in the vendor bootloader (aka DFU) - - [ ] I have checked this is not already covered in the docs in `/Documentation` - -* **What is the current behavior?** - -* **What is the expected behavior?** - -***Steps to reproduce the bug:*** - -- Turn on... -- Hold.... - -* **What is the motivation / use case for changing the behavior?** - - - -* **What are you running:** - -On the idle screen, you can hold the settings button and it will show you the firmware & PCB version. -If using a USB-C supply please note model number - - - Firmware Version: 2.x? - - PCB Version: (1/2) - - Power Supply (Voltage and Current Rating) : \ No newline at end of file diff --git a/README.md b/README.md index d2eb73e7..9123a99c 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,12 @@ # IronOS - Flexible Soldering iron control Firmware -_This repository was formerly known as TS100, its the same great code. Just with more supported devices_ +_This repository was formerly known as TS100, it's the same great code. Just with more supported devices_ -Originally concieved 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 iron control firmware. The firmware implements all of the standard features of a "smart" soldering iron, with lots of little extras and tweaks. -I highly reccomend reading the installation guide fully when installing on your iron. And after install just explore the settings menu. +I highly recommend reading the installation guide fully when installing on your iron. And after install just explore the settings menu. For soldering irons that are designed to be powered by "smart" power sources (QC and PD), the firmware supports settings around the negotiated power and voltage. For soldering irons that are designed to be powered by batteries (TS100), settings for a cutoff voltage for battery protection are supported. @@ -27,15 +27,15 @@ To get started with this firmware, please jump over to [here](Documentation/Gett - PID style iron temperature control - Automatic sleep with selectable sensitivity - Motion wake support -- All settings exposed in intuitive menu +- 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). +- (Pinecil) Supports all 3 power modes (PD, QC, DC In). - 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 of time) +- 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](Documentation/Logo.md) @@ -43,14 +43,14 @@ To get started with this firmware, please jump over to [here](Documentation/Gett ## Installation -For installation for your device, please refer to the [Flashing Guide](Documentation/Flashing.md). +For notes on installation for your device, please refer to the [Flashing Guide](Documentation/Flashing.md). ## Menu System This new firmware uses a new menu system to allow access to the settings on the device. -When on the main screen, the unit shows prompts for the two most common operations. +When on the main screen, the unit shows a pair of prompts for the two most common operations. -- Pressing the button near the tip enters soldering mode +- Pressing the button near the tip enters the soldering mode - Pressing the button near the USB enters the settings menu - Holding the button near the tip will enter soldering temperature adjust mode (This is the same as the one in the soldering menu, just to let you edit before heating up) - Holding the button near the USB end will show the [debug menu](Documentation/DebugMenu.md) @@ -88,5 +88,5 @@ Other components such as FreeRTOS/USB-PD have their own licence. ## 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. +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.