mirror of
https://github.com/Ralim/IronOS.git
synced 2025-07-22 12:00:35 +02:00
Update porting guide + cleanups (#1898)
* Update porting guide + cleanups * Documentation/README.md: update autogenerated file
This commit is contained in:
9
.github/workflows/docs.yml
vendored
9
.github/workflows/docs.yml
vendored
@@ -1,22 +1,19 @@
|
||||
|
||||
name: Docs
|
||||
|
||||
# Controls when the workflow will run
|
||||
on:
|
||||
# Triggers the workflow on push or pull request
|
||||
push:
|
||||
branches: [ dev, docs ]
|
||||
branches: [dev, docs]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
|
||||
# Allow one concurrent deployment
|
||||
concurrency:
|
||||
group: "pages"
|
||||
cancel-in-progress: true
|
||||
|
||||
|
||||
jobs:
|
||||
deploy-docs:
|
||||
# The type of runner that the job will run on
|
||||
@@ -28,12 +25,12 @@ jobs:
|
||||
fetch-depth: 0
|
||||
- uses: actions/setup-python@v5
|
||||
|
||||
|
||||
- run: |
|
||||
pip install --upgrade pip &&
|
||||
pip install mkdocs mkdocs-gen-files pymdown-extensions \
|
||||
mkdocs-git-revision-date-plugin mkdocs-autolinks-plugin \
|
||||
mkdocs-awesome-pages-plugin
|
||||
mkdocs-awesome-pages-plugin
|
||||
|
||||
- run: git config user.name 'github-actions[bot]' && git config user.email 'github-actions[bot]@users.noreply.github.com'
|
||||
|
||||
- name: Publish docs
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -9,7 +9,7 @@ If your device did not come with IronOS already installed, or if you need to upd
|
||||
- [TS80 / TS80P](https://ralim.github.io/IronOS/Flashing/TS80%28P%29/)
|
||||
- [TS100](https://ralim.github.io/IronOS/Flashing/TS100)
|
||||
|
||||
It is recommended to update to the newest stable release.
|
||||
It is recommended to update to the newest stable release when you first receive your device to ensure you are up to date.
|
||||
|
||||
Once your Iron has been flashed, on first power on it _may_ warn you about the system settings being reset.
|
||||
_Do not panic_; this is 100% completely normal. This is here to note to you that they have been reset to handle the internal structure changing.
|
||||
|
@@ -3,24 +3,22 @@
|
||||
IronOS is largely designed to run on devices that are using _fairly_ modern microcontrollers at their core. Generally this means an ARM Cortex or RISC-V processor.
|
||||
At this point in time it is not planned to support 8051 or similar cored devices. This is largely due to the reliance on FreeRTOS at the moment.
|
||||
|
||||
When requesting a port for a new device, please try and find out if the hardware meets the below requirements.
|
||||
When requesting a port for a new device, please try and find out if the hardware meets the below requirements.
|
||||
|
||||
The feature list's below are organised into three categories; Hard requirements that as of current must be met, soft requirements that _should_ be met for full featured performance and the final category of planned _but not yet implemented_ features; which can be implemented but can result in delays as these are not yet implemented.
|
||||
|
||||
Aside from the below, keep in mind IronOS is really designed for soldering irons. This has expanded out into hot-plates as they are exceptionally similar devices.
|
||||
|
||||
|
||||
## Hard requirements
|
||||
|
||||
1. Supported processor (Arm Cortex or RISC-V). (Though generally anything that has an existing FreeRTOS port is possible).
|
||||
2. 64K of flash or larger (See note A)
|
||||
3. 16K of ram or larger
|
||||
4. Device has one or more heating elements that can be controlled by a main temperature sensor
|
||||
5. If the main temperature sensor is a thermalcouple, a reference temperature sensor for cold junction compensation must exist and be close to the sensor contacts
|
||||
5. If the main temperature sensor is a thermocouple, a reference temperature sensor for cold junction compensation must exist and be close to the sensor contacts
|
||||
6. Means of the user updating the device without opening
|
||||
7. Known pinmap for the microcontroller. (see note B)
|
||||
|
||||
|
||||
## Soft requirements
|
||||
|
||||
1. USB-PD is strongly preferred over Quick Charge; Quick Charge only devices are considered legacy and will likely not be prioritiesd.
|
||||
@@ -33,11 +31,9 @@ Aside from the below, keep in mind IronOS is really designed for soldering irons
|
||||
|
||||
These features are planned for eventual support, but will likely not be done until devices need them.
|
||||
|
||||
* OLED Screens larger than 96x16 pixels
|
||||
* Colour screens
|
||||
* More than 2 buttons for input, or encoder inputs
|
||||
* WiFi/Zigbee/ any other networking
|
||||
|
||||
- Colour screens
|
||||
- More than 2 buttons for input, or encoder inputs
|
||||
- WiFi/Zigbee/ any other networking
|
||||
|
||||
## Notes
|
||||
|
||||
@@ -46,7 +42,7 @@ These features are planned for eventual support, but will likely not be done unt
|
||||
64KB is generally the minimum recommended size for the hardware to have.
|
||||
Larger is _definitely_ preferred as it enables more features or the multi-pack language firmwares.
|
||||
Keep in mind that on some devices we loose space to a USB DFU bootloader (Older STM32F1's) so the firmware _can_ work with less. But it can come at the cost of features.
|
||||
128KB or larger is **great**.
|
||||
128KB or larger is **great**.
|
||||
For devices that have BLE or WiFi or other features, often code requirements are significantly larger. These are considered non essential features so will be ignored if we run into size issues.
|
||||
|
||||
### Note B - Pinmap for the microcontroller
|
||||
@@ -54,26 +50,22 @@ For devices that have BLE or WiFi or other features, often code requirements are
|
||||
In order to be able to write the interfacing code to communicate with the hardware, we need to know what pins on the microcontroller go to what hardware.
|
||||
It is also loosely required to have an understanding of the rest of the device, we do not need details on a lot of the boring aspects,but if for example a USB-PD interface IC is used we would want to know which one.
|
||||
|
||||
## Example request for adding a new device
|
||||
|
||||
|
||||
# Example request for adding a new device
|
||||
|
||||
|
||||
Device Name:
|
||||
Device Name:
|
||||
Device Type:
|
||||
Approximate Price:
|
||||
Approximate Price:
|
||||
Example purchase locations:
|
||||
|
||||
## Hardware details:
|
||||
### Hardware details
|
||||
|
||||
Microcontroller version:
|
||||
Flash size (If external to the MCU):
|
||||
Microcontroller version: `STM32F103C8Tx`
|
||||
Flash size (If external to the MCU):`N/A`
|
||||
Microcontroller Pinout: <!-- Either link to manufacturer information, a forum documenting this or a discussion where the pinout has been roughly figured out already-->
|
||||
Device type: <!-- Soldering Iron/Hot Plate/ Reflow oven etc-->
|
||||
Device meets hard requirements list []
|
||||
Device meets soft requirements list []
|
||||
|
||||
|
||||
Device features USB-PD []
|
||||
Device features USB-QC []
|
||||
Device features DC Input []
|
||||
|
@@ -27,6 +27,7 @@
|
||||
- [Troubleshooting](../Documentation/Troubleshooting.md)
|
||||
- [Known Hardware Issues](../Documentation/HardwareIssues.md)
|
||||
- [Power sources](../Documentation/PowerSources.md)
|
||||
- [New Hardware Requirements](../Documentation/PortingToNewDevice.md)
|
||||
- [Translations](../Documentation/Translation.md)
|
||||
- [Development](../Documentation/Development.md)
|
||||
- [Changelog](../Documentation/History.md)
|
||||
|
@@ -12,10 +12,10 @@ edit_uri: edit/dev/Documentation/
|
||||
|
||||
# Theme and config
|
||||
theme:
|
||||
name: readthedocs
|
||||
highlightsjs: true
|
||||
hljs_languages:
|
||||
- yaml
|
||||
name: readthedocs
|
||||
highlightsjs: true
|
||||
hljs_languages:
|
||||
- yaml
|
||||
|
||||
# Navigation structure
|
||||
nav:
|
||||
@@ -41,6 +41,7 @@ nav:
|
||||
- Troubleshooting: Troubleshooting.md
|
||||
- Known Hardware Issues: HardwareIssues.md
|
||||
- Power sources: PowerSources.md
|
||||
- New Hardware Requirements: PortingToNewDevice.md
|
||||
- Translations: Translation.md
|
||||
- Development: Development.md
|
||||
- Changelog: History.md
|
||||
|
Reference in New Issue
Block a user