mirror of
https://github.com/Ralim/IronOS.git
synced 2025-02-26 07:53:55 +00:00
Merge remote-tracking branch 'origin/dev' into magic
This commit is contained in:
16
.github/workflows/push.yml
vendored
16
.github/workflows/push.yml
vendored
@@ -22,6 +22,9 @@ jobs:
|
|||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
submodules: true
|
submodules: true
|
||||||
|
|
||||||
|
- name: Git ownership exception
|
||||||
|
run: git config --global --add safe.directory /__w/IronOS/IronOS && git config --global safe.directory "$GITHUB_WORKSPACE"
|
||||||
|
|
||||||
- name: build ${{ matrix.model }}
|
- name: build ${{ matrix.model }}
|
||||||
run: cd source && ./build.sh -m ${{ matrix.model }}
|
run: cd source && ./build.sh -m ${{ matrix.model }}
|
||||||
@@ -32,7 +35,7 @@ jobs:
|
|||||||
cp LICENSE_RELEASE.md source/Hexfile/LICENSE_RELEASE.md
|
cp LICENSE_RELEASE.md source/Hexfile/LICENSE_RELEASE.md
|
||||||
|
|
||||||
- name: Archive ${{ matrix.model }} artifacts
|
- name: Archive ${{ matrix.model }} artifacts
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: ${{ matrix.model }}
|
name: ${{ matrix.model }}
|
||||||
path: |
|
path: |
|
||||||
@@ -46,7 +49,7 @@ jobs:
|
|||||||
run: cd source && python3 metadata.py ${{ matrix.model }}.json
|
run: cd source && python3 metadata.py ${{ matrix.model }}.json
|
||||||
|
|
||||||
- name: Archive ${{ matrix.model }} index file
|
- name: Archive ${{ matrix.model }} index file
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: metadata
|
name: metadata
|
||||||
path: source/Hexfile/${{ matrix.model }}.json
|
path: source/Hexfile/${{ matrix.model }}.json
|
||||||
@@ -69,7 +72,10 @@ jobs:
|
|||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
submodules: true
|
submodules: true
|
||||||
|
|
||||||
|
- name: Git ownership exception
|
||||||
|
run: git config --global --add safe.directory /__w/IronOS/IronOS && git config --global safe.directory "$GITHUB_WORKSPACE"
|
||||||
|
|
||||||
- name: build ${{ matrix.model }}
|
- name: build ${{ matrix.model }}
|
||||||
run: cd source && make -j$(nproc) model="${{ matrix.model }}" firmware-multi_compressed_European firmware-multi_compressed_Bulgarian+Russian+Serbian+Ukrainian firmware-multi_Chinese+Japanese
|
run: cd source && make -j$(nproc) model="${{ matrix.model }}" firmware-multi_compressed_European firmware-multi_compressed_Bulgarian+Russian+Serbian+Ukrainian firmware-multi_Chinese+Japanese
|
||||||
|
|
||||||
@@ -79,7 +85,7 @@ jobs:
|
|||||||
cp LICENSE_RELEASE.md source/Hexfile/LICENSE_RELEASE.md
|
cp LICENSE_RELEASE.md source/Hexfile/LICENSE_RELEASE.md
|
||||||
|
|
||||||
- name: Archive ${{ matrix.model }} artifacts
|
- name: Archive ${{ matrix.model }} artifacts
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: ${{ matrix.model }}_multi-lang
|
name: ${{ matrix.model }}_multi-lang
|
||||||
path: |
|
path: |
|
||||||
@@ -93,7 +99,7 @@ jobs:
|
|||||||
run: cd source && python3 metadata.py Pinecil_multi-lang.json
|
run: cd source && python3 metadata.py Pinecil_multi-lang.json
|
||||||
|
|
||||||
- name: Archive ${{ matrix.model }} index file
|
- name: Archive ${{ matrix.model }} index file
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: metadata
|
name: metadata
|
||||||
path: source/Hexfile/Pinecil_multi-lang.json
|
path: source/Hexfile/Pinecil_multi-lang.json
|
||||||
|
|||||||
@@ -4,4 +4,4 @@ IronOS supports both a bootup logo _AND_ bootup animations.
|
|||||||
|
|
||||||
However, they are no longer included in this repo.
|
However, they are no longer included in this repo.
|
||||||
|
|
||||||
(Please read the docs)[../Documentation/Logo.md]
|
[Please read the docs](../Documentation/Logo.md)
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ This is accessed by holding the rear (-/B) button on the iron while it is on the
|
|||||||
|
|
||||||
This menu is meant to be simple, so it has no fancy GUI animations.
|
This menu is meant to be simple, so it has no fancy GUI animations.
|
||||||
|
|
||||||
To move through the menu use the front (+/A) button.
|
To move through the menu, use the front (+/A) button.
|
||||||
To exit, use the rear (-/B) button again.
|
To exit, use the rear (-/B) button again.
|
||||||
|
|
||||||
## Menu items
|
## Menu items
|
||||||
@@ -31,8 +31,8 @@ This just shows how many deciseconds the unit has been powered for.
|
|||||||
|
|
||||||
### Move
|
### Move
|
||||||
|
|
||||||
This is the last timestamp of movement. When the iron is moved this should update to match the time field (one before in the menu).
|
This is the last timestamp of movement. When the iron is moved, this should update to match the time field (one before in the menu).
|
||||||
This can be used for checking performance of the movement dection code.
|
This can be used for checking performance of the movement detection code.
|
||||||
|
|
||||||
### RTip
|
### RTip
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ This is the raw tip reading in μV. This can be used when assessing the calibrat
|
|||||||
|
|
||||||
### CTip
|
### CTip
|
||||||
|
|
||||||
This is the tip temperature in degrees Celsius.
|
This is the tip temperature in degrees Celsius.
|
||||||
This can be used with RTip for assessing temperature processing performance.
|
This can be used with RTip for assessing temperature processing performance.
|
||||||
|
|
||||||
### CHan
|
### CHan
|
||||||
@@ -48,11 +48,11 @@ This can be used with RTip for assessing temperature processing performance.
|
|||||||
This is the handle temperature in °C. This is used for cold junction compensation of the tip temperature.
|
This is the handle temperature in °C. This is used for cold junction compensation of the tip temperature.
|
||||||
This is shown in degrees Celsius x10, so 200 == 20.0 °C
|
This is shown in degrees Celsius x10, so 200 == 20.0 °C
|
||||||
|
|
||||||
### Vin
|
### Vin
|
||||||
|
|
||||||
The input voltage as read by the internal ADC. Can be used to sanity check its being read correctly.
|
The input voltage as read by the internal ADC. Can be used to sanity check its being read correctly.
|
||||||
|
|
||||||
### ACC
|
### ACC
|
||||||
|
|
||||||
This indicates the accelerometer that is fitted inside the unit.
|
This indicates the accelerometer that is fitted inside the unit.
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ This indicates the accelerometer that is fitted inside the unit.
|
|||||||
- None detected -> running in fallback without movement detection
|
- None detected -> running in fallback without movement detection
|
||||||
- Scanning -> Still searching I2C for one
|
- Scanning -> Still searching I2C for one
|
||||||
|
|
||||||
### PWR
|
### PWR
|
||||||
|
|
||||||
This indicates the current power source for the iron.
|
This indicates the current power source for the iron.
|
||||||
This may change during power up as the sources are negotiated in turn.
|
This may change during power up as the sources are negotiated in turn.
|
||||||
@@ -74,15 +74,25 @@ This may change during power up as the sources are negotiated in turn.
|
|||||||
- **PD W. VBus** input (We used the PD subsystem to negotiate for the current supply); and VBus is connected to your input power source
|
- **PD W. VBus** input (We used the PD subsystem to negotiate for the current supply); and VBus is connected to your input power source
|
||||||
- **PD No VBus** input (We used the PD subsystem to negotiate for the current supply); and VBus is **NOT** connected to your input power source
|
- **PD No VBus** input (We used the PD subsystem to negotiate for the current supply); and VBus is **NOT** connected to your input power source
|
||||||
- If you successfully modified the Pinecil to support 24 V by cutting the trace line to Vbus, then 'PD No VBus' displays on screen.
|
- If you successfully modified the Pinecil to support 24 V by cutting the trace line to Vbus, then 'PD No VBus' displays on screen.
|
||||||
- Connect to any PD USB power to check Vbus status. It will not show any PD message when Pinecil is powered by DC port, QC, or USB 5 V (non PD).
|
- Connect to any PD USB power to check Vbus status. It will not show any PD message when Pinecil is powered by DC port, QC, or USB 5 V (non-PD).
|
||||||
|
|
||||||
### Max
|
### Max
|
||||||
|
|
||||||
This indicates the max temperature in degrees Celsius that the system estimates it can measure the tip reliably to.
|
This indicates the max temperature in degrees Celsius that the system estimates it can measure the tip reliably to.
|
||||||
This is dependant on a few factors including the handle temperature so it can move around during use.
|
This is dependent on a few factors including the handle temperature so it can move around during use.
|
||||||
|
|
||||||
|
|
||||||
### Hall
|
### Hall
|
||||||
|
|
||||||
This appears if your device is capable of having a magnetic hall effect sensor installed (Pinecil).
|
This appears if your device is capable of having a magnetic hall effect sensor installed (Pinecil).
|
||||||
This shows the current field strength reading from the sensor. It can be used to check if the sensor is operational, and measure how strong the magnetic field is for diagnostics and optimal placement of magnets on a stand.
|
This shows the current field strength reading from the sensor. It can be used to check if the sensor is operational, and measure how strong the magnetic field is for diagnostics and optimal placement of magnets on a stand.
|
||||||
|
|
||||||
|
# PD Debug menu
|
||||||
|
|
||||||
|
On the Pinecil; if the iron is booted up while holding the front button (+); it will show an extra menu for inspecting USB-PD power adapters.
|
||||||
|
|
||||||
|
The menu navigates like the debug menu, where pressing (+) cycles through elements, and (-) will exit the menu.
|
||||||
|
|
||||||
|
First page shows the PD negotiation stage number; which can be used for diagnosing if PD is not working.
|
||||||
|
After a few seconds or after PD negotiates (state above 5) it will show "No VBus" if the VBus mod is performed or "VBus" if the mod has not been done.
|
||||||
|
|
||||||
|
Once negotiation is complete; the other screens will show the advertised readings for voltage and current of the proposals.
|
||||||
|
|||||||
@@ -94,11 +94,11 @@ To build a release instead, run the `build.sh` script. This will update translat
|
|||||||
## Updating languages
|
## Updating languages
|
||||||
|
|
||||||
To update the language translation files and their associated font maps, execute the `make_translation.py` code from the `Translations` directory.
|
To update the language translation files and their associated font maps, execute the `make_translation.py` code from the `Translations` directory.
|
||||||
If you edit the translation definitions or the english translation, please also run `gen_menu_docs.py` to update the settings menu documentation automatically.
|
If you edit the translation definitions or the English translation, please also run `gen_menu_docs.py` to update the settings menu documentation automatically.
|
||||||
|
|
||||||
## Building Pinecil
|
## Building Pinecil
|
||||||
|
|
||||||
I highly recommend using the command line tools and using Docker to run the compiler.
|
I highly recommend using the command line tools and using Docker to run the compiler.
|
||||||
It's a bit more fussy on setup than the STM tooling, and this is by far the easiest way.
|
It's a bit fussier on setup than the STM tooling, and this is by far the easiest way.
|
||||||
If you _need_ an IDE I have used [Nuclei's IDE](https://nucleisys.com/download.php).
|
If you _need_ an IDE I have used [Nuclei's IDE](https://nucleisys.com/download.php).
|
||||||
Follow the same idea as the STM Cube IDE notes above.
|
Follow the same idea as the STM Cube IDE notes above.
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ These are built on every change and can be found on the Actions tab (see below).
|
|||||||
### Main release
|
### Main release
|
||||||
|
|
||||||
Main releases are made to the [releases page](https://github.com/Ralim/IronOS/releases).
|
Main releases are made to the [releases page](https://github.com/Ralim/IronOS/releases).
|
||||||
Download the zip file that matches your model of soldering iron, and extract it.
|
Download the zip file that matches your model of soldering iron and extract it.
|
||||||
Select the appropriate file type for your unit, in general Miniware devices need `.hex` and Pinecil needs `.dfu`.
|
Select the appropriate file type for your unit, in general Miniware devices need `.hex` and Pinecil needs `.dfu`.
|
||||||
Flash according to details below
|
Flash according to details below
|
||||||
|
|
||||||
@@ -31,7 +31,7 @@ This is completely safe, but if it goes wrong just put the `.hex` file from the
|
|||||||
Officially the bootloader on the devices 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).
|
Officially the bootloader on the devices 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 (MHP30 the left button on the back), and plug in the USB to the computer.
|
1. Hold the button closest to the tip (MHP30 the left button on the back), and plug in the USB to the computer.
|
||||||
2. The unit will appear as a USB drive. ( Screen will say `DFU` on it.)
|
2. The unit will appear as a USB drive. (Screen will say `DFU` on it.)
|
||||||
3. Drag the `.hex` file onto the USB drive.
|
3. Drag the `.hex` file onto the USB drive.
|
||||||
4. The unit will disconnect and reconnect.
|
4. The unit will disconnect and reconnect.
|
||||||
5. The filename will have changed to end in *.RDY* or *.ERR*
|
5. The filename will have changed to end in *.RDY* or *.ERR*
|
||||||
@@ -39,9 +39,9 @@ Officially the bootloader on the devices only works under Windows (use the built
|
|||||||
7. If it didn't work the first time, try copying the file again without disconnecting the device, often it will work on the second shot.
|
7. If it didn't work the first time, try copying the file again without disconnecting the device, often it will work on the second shot.
|
||||||
8. Disconnect the USB and power up the device. You're good to go.
|
8. Disconnect the USB and power up the device. You're good to go.
|
||||||
|
|
||||||
For the more adventurous out there, you can also load this firmware onto the device using an SWD programmer.
|
For the more adventurous out there, you can also load this firmware onto the device using an SWD programmer, for easier installation follow the guide at the end of this document.
|
||||||
|
|
||||||
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/).
|
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 [IronOS-dfu](https://github.com/Ralim/IronOS-dfu) is recommended as it allows reliable flashing of binary files with [dfu-util](http://dfu-util.sourceforge.net/).
|
||||||
|
|
||||||
There is a complete device flash backup included in this repository. (Note this includes the bootloader, so will need an SWD programmer to load onto the unit).
|
There is a complete device flash backup included in this repository. (Note this includes the bootloader, so will need an SWD programmer to load onto the unit).
|
||||||
|
|
||||||
@@ -90,11 +90,11 @@ Check the extension of your firmware, it should be `.RDY` now.
|
|||||||
# Pinecil (Pine64)
|
# Pinecil (Pine64)
|
||||||
|
|
||||||
- The MCU used in Pinecil supports usb-dfu. Reference [Pinecil Wiki](https://wiki.pine64.org/wiki/Pinecil).
|
- The MCU used in Pinecil supports usb-dfu. Reference [Pinecil Wiki](https://wiki.pine64.org/wiki/Pinecil).
|
||||||
- Recommended Updater: the [Pine64 Updater](https://github.com/pine64/pinecil-firmware-updater/releases), is an easy-to-use GUI app. It is fast and works in several types of OS, i.e. Windows/Mac. It will automatically fetch the newest stable version of IronOS from Github.
|
- Recommended Updater: the [Pine64 Updater](https://github.com/pine64/pinecil-firmware-updater/releases), is an easy-to-use GUI app. It is fast and works in several types of OS, i.e. Windows/Mac. It will automatically fetch the newest stable version of IronOS from GitHub.
|
||||||
- Troubleshooting: if you have issues using the Pine64 Updater or your install fails, please go to troubleshooting tips below.
|
- Troubleshooting: if you have issues using the Pine64 Updater or your install fails, please go to troubleshooting tips below.
|
||||||
- Community chat: if troubleshooting doesn't work, then join the Pine64 > Pinecil channel. There are knowledgeable members in Discord/Telegram/Matrix. Discord has a bridge bot connection to Telegram and Matrix so that all pine volunteers/members can see advice for Pinecil and related items or just get tips on which Power supply to purchase.
|
- Community chat: if troubleshooting doesn't work, then join the Pine64 > Pinecil channel. There are knowledgeable members in Discord/Telegram/Matrix. Discord has a bridge bot connection to Telegram and Matrix so that all pine volunteers/members can see advice for Pinecil and related items or just get tips on which Power supply to purchase.
|
||||||
- One advantage of Pinecil is that you can not permanently damage it doing a firmware update (because DFU is in ROM); an update could render Pinecil temporarily inoperable if you flash an invalid firmware. But no worries, simply re-flashing with a working firmware copy will fix everything.
|
- One advantage of Pinecil is that you cannot permanently damage it doing a firmware update (because DFU is in ROM); an update could render Pinecil temporarily inoperable if you flash an invalid firmware. But no worries, simply re-flashing with a working firmware copy will fix everything.
|
||||||
- USB-C cable is required to do an update. Generally, all USB controllers work, but some hubs have issues so it is preferred to avoid USB hubs for updates.
|
- USB-C cable is required to do an update. Generally, all USB controllers work, but some hubs have issues, so it is preferred to avoid USB hubs for updates.
|
||||||
- Alternate Update Methods: if your OS is not currently supported by the [Updater](https://github.com/pine64/pinecil-firmware-updater/releases) or it does not meet your needs, i.e., you want to install a beta version, the below manual methods may be used.
|
- Alternate Update Methods: if your OS is not currently supported by the [Updater](https://github.com/pine64/pinecil-firmware-updater/releases) or it does not meet your needs, i.e., you want to install a beta version, the below manual methods may be used.
|
||||||
|
|
||||||
## Linux and Mac
|
## Linux and Mac
|
||||||
@@ -103,7 +103,7 @@ Check the extension of your firmware, it should be `.RDY` now.
|
|||||||
|
|
||||||
⛔ Do not use the DC power jack while updating firmware or you may destroy your PC. ⛔
|
⛔ Do not use the DC power jack while updating firmware or you may destroy your PC. ⛔
|
||||||
|
|
||||||
1. Download and extract the firmware package from Github [IronOS Releases](https://github.com/Ralim/IronOS/releases).
|
1. Download and extract the firmware package from GitHub [IronOS Releases](https://github.com/Ralim/IronOS/releases).
|
||||||
2. Highly recommend updating `dfu-util` to the newest version.
|
2. Highly recommend updating `dfu-util` to the newest version.
|
||||||
3. Enter DFU mode: press and hold (-) button at the back of the iron (do not release).
|
3. Enter DFU mode: press and hold (-) button at the back of the iron (do not release).
|
||||||
4. Connect USB to PC, and USB-C to back of Pinecil, keep holding (-) button down.
|
4. Connect USB to PC, and USB-C to back of Pinecil, keep holding (-) button down.
|
||||||
@@ -115,7 +115,7 @@ Check the extension of your firmware, it should be `.RDY` now.
|
|||||||
dfu-util -D Pinecil_EN.dfu
|
dfu-util -D Pinecil_EN.dfu
|
||||||
```
|
```
|
||||||
|
|
||||||
Choose the file name from the folder with the appropriate 2-letter country code for your chosen language (i.e, EN = English).
|
Choose the file name from the folder with the appropriate 2-letter country code for your chosen language (i.e., EN = English).
|
||||||
|
|
||||||
### Troubleshooting:
|
### Troubleshooting:
|
||||||
- If you get a message stating that `More than one DFU capable USB device found!` when running the above command you probably have an old version of `dfu-util` installed. Might be worth updating. You can still install on the old version, but you will have to specify which DFU interface to flash to. Running the command `dfu-util -l` will show you if there are several DFU devices detected. Example:
|
- If you get a message stating that `More than one DFU capable USB device found!` when running the above command you probably have an old version of `dfu-util` installed. Might be worth updating. You can still install on the old version, but you will have to specify which DFU interface to flash to. Running the command `dfu-util -l` will show you if there are several DFU devices detected. Example:
|
||||||
@@ -129,10 +129,34 @@ dfu-util -D Pinecil_EN.dfu -a 0
|
|||||||
```
|
```
|
||||||
- Note: if you use an older release of `dfu-util` and do not see `alt=0, name="@Internal Flash /0x08000000/128*001Kg"` when running `dfu-util -l` you likely will not be able to update without first updating 'dfu-util'.
|
- Note: if you use an older release of `dfu-util` and do not see `alt=0, name="@Internal Flash /0x08000000/128*001Kg"` when running `dfu-util -l` you likely will not be able to update without first updating 'dfu-util'.
|
||||||
- If your update is crashing part-way into the update, there is sometimes an issue with older/fussy USB controllers (they can show up/disappear/then show up again)
|
- If your update is crashing part-way into the update, there is sometimes an issue with older/fussy USB controllers (they can show up/disappear/then show up again)
|
||||||
- Try a direct connection to the USB port, do not use a USB hub, and use shorter cable. If possible pick a port connected to the main board.
|
- Try a direct connection to the USB port, do not use a USB hub, and use shorter cable. If possible, pick a port connected to the main board.
|
||||||
- Switch to a different PC/Laptop and use different ports. USB-C ports are recommended but some have also reported having a fussy C port.
|
- Switch to a different PC/Laptop and use different ports. USB-C ports are recommended but some have also reported having a fussy C port.
|
||||||
- Hold down the (-) button for the entire firmware update, do not release until near the end.
|
- Hold down the (-) button for the entire firmware update, do not release until near the end.
|
||||||
- `DC Low` message: a pc/laptop can not fully power pinecil, it generally can only get 5 V (non-PD) to communicate for firmware updates and Pinecil will report 'DC Low'. This is normal.
|
- `DC Low` message: a pc/laptop cannot fully power Pinecil, it generally can only get 5 V (non-PD) to communicate for firmware updates and Pinecil will report 'DC Low'. This is normal.
|
||||||
|
- If `dfu-util` aborts with an error like
|
||||||
|
```
|
||||||
|
dfu-util: Cannot open DFU device 28e9:0189 found on devnum 42 (LIBUSB_ERROR_IO)
|
||||||
|
```
|
||||||
|
and `dmesg` reports USB errors like these
|
||||||
|
```
|
||||||
|
kernel: usb 1-1: reset full-speed USB device number 42 using xhci_hcd
|
||||||
|
kernel: usb 1-1: device descriptor read/64, error -71
|
||||||
|
kernel: usb 1-1: device descriptor read/64, error -71
|
||||||
|
kernel: usb 1-1: reset full-speed USB device number 42 using xhci_hcd
|
||||||
|
kernel: usb 1-1: device descriptor read/64, error -71
|
||||||
|
kernel: usb 1-1: device descriptor read/64, error -71
|
||||||
|
kernel: usb 1-1: reset full-speed USB device number 42 using xhci_hcd
|
||||||
|
kernel: usb 1-1: Device not responding to setup address.
|
||||||
|
kernel: usb 1-1: Device not responding to setup address.
|
||||||
|
kernel: usb 1-1: device not accepting address 42, error -71
|
||||||
|
```
|
||||||
|
then try to disable USB autosuspend.
|
||||||
|
This can be done with a set of udev rules specifically for the Pinecil:
|
||||||
|
```udev
|
||||||
|
SUBSYSTEM=="usb", ATTR{idVendor}=="28e9", ATTR{idProduct}=="0189", MODE:="0660"
|
||||||
|
SUBSYSTEM=="usb", ATTR{idVendor}=="28e9", ATTR{idProduct}=="0189", GROUP="plugdev"
|
||||||
|
SUBSYSTEM=="usb", ATTR{idVendor}=="28e9", ATTR{idProduct}=="0189", TEST=="power/control", ATTR{power/control}="on"
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Windows
|
## Windows
|
||||||
@@ -147,7 +171,7 @@ Two Options for Windows
|
|||||||
|
|
||||||
1. Using command line `dfu-util` is similar to above for Linux / Mac.
|
1. Using command line `dfu-util` is similar to above for Linux / Mac.
|
||||||
2. Highly recommend updating `dfu-util` to the newest version.
|
2. Highly recommend updating `dfu-util` to the newest version.
|
||||||
3. Download and extract the firmware package from Github [IronOS Releases](https://github.com/Ralim/IronOS/releases).
|
3. Download and extract the firmware package from GitHub [IronOS Releases](https://github.com/Ralim/IronOS/releases).
|
||||||
4. Enter DFU mode: press and hold (-) button at the back of the iron (do not release).
|
4. Enter DFU mode: press and hold (-) button at the back of the iron (do not release).
|
||||||
5. Connect USB to PC, and USB-C to the back of Pinecil, keep holding (-) button down.
|
5. Connect USB to PC, and USB-C to the back of Pinecil, keep holding (-) button down.
|
||||||
6. Screen will stay **black/off** to indicate the Pinecil is in DFU mode. This is normal.
|
6. Screen will stay **black/off** to indicate the Pinecil is in DFU mode. This is normal.
|
||||||
@@ -162,14 +186,14 @@ dfu-util -D Pinecil_EN.dfu
|
|||||||
- If you have errors, see Troubleshooting [above](/Documentation/Flashing.md#troubleshooting).
|
- If you have errors, see Troubleshooting [above](/Documentation/Flashing.md#troubleshooting).
|
||||||
|
|
||||||
|
|
||||||
### Option 2: use the gui tool from chip vendor
|
### Option 2: use the GUI tool from chip vendor
|
||||||
|
|
||||||
### Steps
|
### Steps
|
||||||
|
|
||||||
⛔ Do not use the DC power jack while updating firmware or you may destroy your PC. ⛔
|
⛔ Do not use the DC power jack while updating firmware or you may destroy your PC. ⛔
|
||||||
|
|
||||||
1. If you are uncomfortable with the command line, then this chip vendor supplied gui tool/drivers is an option.
|
1. If you are uncomfortable with the command line, then this chip vendor supplied GUI tool/drivers is an option.
|
||||||
2. Download and extract the firmware package from Github [IronOS Releases](https://github.com/Ralim/IronOS/releases).
|
2. Download and extract the firmware package from GitHub [IronOS Releases](https://github.com/Ralim/IronOS/releases).
|
||||||
3. Download both the `GD32 MCU DFU TOOL` and the `GD32 Dfu Drivers`.
|
3. Download both the `GD32 MCU DFU TOOL` and the `GD32 Dfu Drivers`.
|
||||||
- GD32 DFU Tool [here](http://www.gd32mcu.com/en/download?kw=GD32+MCU+Dfu+Tool&lan=en). If the link breaks, search for "GD32 MCU Dfu Tool" at this [link](http://www.gd32mcu.com/en/download/).
|
- GD32 DFU Tool [here](http://www.gd32mcu.com/en/download?kw=GD32+MCU+Dfu+Tool&lan=en). If the link breaks, search for "GD32 MCU Dfu Tool" at this [link](http://www.gd32mcu.com/en/download/).
|
||||||
- GD32 DFU Drivers [here](http://www.gd32mcu.com/en/download?kw=GD32+Dfu+Drivers&lan=en). If the link breaks, search for "GD32 Dfu Drivers" at this [link](http://www.gd32mcu.com/en/download/).
|
- GD32 DFU Drivers [here](http://www.gd32mcu.com/en/download?kw=GD32+Dfu+Drivers&lan=en). If the link breaks, search for "GD32 Dfu Drivers" at this [link](http://www.gd32mcu.com/en/download/).
|
||||||
@@ -179,15 +203,15 @@ dfu-util -D Pinecil_EN.dfu
|
|||||||
6. Connect Pinecil to a PC via USB cable (do not release the (-) yet).
|
6. Connect Pinecil to a PC via USB cable (do not release the (-) yet).
|
||||||
7. Screen will stay **black/off** to indicate the Pinecil is in DFU mode. This is normal.
|
7. Screen will stay **black/off** to indicate the Pinecil is in DFU mode. This is normal.
|
||||||
8. You may hear a beep from Windows as it connects to Pinecil in DFU mode.
|
8. You may hear a beep from Windows as it connects to Pinecil in DFU mode.
|
||||||
9. If you see windows notification that it `does not recognize Usb device`, then you didn't connect, repeat step 3-8.
|
9. If you see windows notification that it `does not recognize USB device`, then you didn't connect, repeat step 3-8.
|
||||||
10. Open the GD32 DFU Tool (ignore prompts to update tool).
|
10. Open the GD32 DFU Tool (ignore prompts to update tool).
|
||||||
11. At the top of the DFU tool, you should see `GD DFU DEVICE 1` appear if you successfully connected Pinecil.
|
11. At the top of the DFU tool, you should see `GD DFU DEVICE 1` appear if you successfully connected Pinecil.
|
||||||
12. If DFU Device box at top is blank, then Pinecil is not connected in DFU mode, repeat steps 3-11.
|
12. If DFU Device box at top is blank, then Pinecil is not connected in DFU mode, repeat steps 3-11.
|
||||||
13. If it has been more than 10 seconds since you connected the USB cable, Release the (-) button. (don't use Upload from Device section)
|
13. If it has been more than 10 seconds since you connected the USB cable, Release the (-) button. (don't use Upload from Device section)
|
||||||
14. Select `Download to device` > Open > Browse to folder dyou unziped in step 2.
|
14. Select `Download to device` > Open > Browse to folder you unzipped in step 2.
|
||||||
15. Select the `hex` file for language. English is Pinecil_EN.hex , tick `Verify after download`.
|
15. Select the `hex` file for language. English is Pinecil_EN.hex , tick `Verify after download`.
|
||||||
16. Click `OK` at bottom. After a few minutes you will see 0-100%, Download successfully! Click `Leave DFU` at the top.
|
16. Click `OK` at bottom. After a few minutes you will see 0-100%, Download successfully! Click `Leave DFU` at the top.
|
||||||
17. Disconnect pinecil cable from PC, plug it into a power supply.
|
17. Disconnect Pinecil cable from PC, plug it into a power supply.
|
||||||
18. Do not need to press any buttons, a new screen should appear.
|
18. Do not need to press any buttons, a new screen should appear.
|
||||||
19. To confirm upgrade, hold the minus (-) button down for a few seconds, it then shows new firmware version v2.xx.x....date
|
19. To confirm upgrade, hold the minus (-) button down for a few seconds, it then shows new firmware version v2.xx.x....date
|
||||||
|
|
||||||
@@ -213,20 +237,19 @@ First, try just copying the file a second time.
|
|||||||
|
|
||||||
If this fails and you are on Mac or Linux reading the wiki page about programming can help. There is also a very long issue thread going through all of the different attempts around this too.
|
If this fails and you are on Mac or Linux reading the wiki page about programming can help. There is also a very long issue thread going through all of the different attempts around this too.
|
||||||
|
|
||||||
If you are on Windows, it's often best to try another computer (friends, work, partners etc).
|
If you are on Windows, it's often best to try another computer (friends, work, partners etc.).
|
||||||
|
|
||||||
#### [Miniware] Device randomly disconnects or does not show up in DFU mode
|
#### [Miniware] Device randomly disconnects or does not show up in DFU mode
|
||||||
|
|
||||||
1. Check if the USB cable you are using has the data pins; test it on another device. There are a surprisingly large number of usb-micro cables that are power _only_.
|
1. Check if the USB cable you are using has the data pins; test it on another device. There are a surprisingly large number of micro-USB cables that are power _only_.
|
||||||
|
|
||||||
2. Try other USB ports. Often different USB controllers will interact with the units differently due to design quirks in the miniware design.
|
2. Try other USB ports. Often different USB controllers will interact with the units differently due to design quirks in the Miniware design.
|
||||||
|
|
||||||
### [Miniware] Alternative bootloader
|
### [Miniware] Alternative bootloader
|
||||||
|
|
||||||
If you are an advanced user, and you have used `usb-dfu` tools before, or you would like to learn; there is an alternative bootloader for these irons.
|
If you are an advanced user, and you have used `usb-dfu` tools before, or you would like to learn; there is an alternative bootloader for these irons.
|
||||||
This will **NOT** show up as a USB storage drive, but instead show up using a standard DFU protocol device. You can then use dfu tools or GUI's to upgrade the iron using the `.bin` files that are posted to the releases page.
|
This will **NOT** show up as a USB storage drive, but instead show up using a standard DFU protocol device. You can then use dfu tools or GUIs to upgrade the iron using the `.bin` files that are posted to the releases page.
|
||||||
|
|
||||||
To change to dapboot based alternative bootloader, you need to flash the hex file from [here](https://github.com/eDesignOSS/ts100-bl-flasher/releases).
|
To install this alternative bootloader, follow the instructions [here](https://github.com/Ralim/IronOS-dfu/blob/mainline/docs/Bootloader.md).
|
||||||
`ts100-stockbl.hex` will reflash the stock bootloader, `ts100-dapboot.hex` will flash the new dapboot based usb bootloader.
|
|
||||||
|
|
||||||
Note that this is only recommended for users who know what they are doing. If you don't understand how this works, please don't flash this.
|
Note that this is only recommended for users who know what they are doing. If you don't understand how this works, please don't flash this.
|
||||||
|
|||||||
@@ -5,4 +5,4 @@
|
|||||||
- Accelerometer is the MSA301, this is mounted roughly in the middle of the unit
|
- Accelerometer is the MSA301, this is mounted roughly in the middle of the unit
|
||||||
- USB-PD is using the FUSB302
|
- USB-PD is using the FUSB302
|
||||||
- The hardware I2C bus on PB6/7 is used for the MSA301 and FUSB302
|
- The hardware I2C bus on PB6/7 is used for the MSA301 and FUSB302
|
||||||
- The OLED is the same SSD1306 as everything else, but its on a bit-banged bus
|
- The OLED is the same SSD1306 as everything else, but it’s on a bit-banged bus
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ If your iron is new, there is a slim chance your accelerometer may be DOA and ne
|
|||||||
|
|
||||||
## No USB-PD IC detected
|
## No USB-PD IC detected
|
||||||
|
|
||||||
Generally, this means either something went very awry in the firmware or the chip is not answering as would normally be expected. Try rolling back to an earlier release to confirm if the issue still persists then the device may need repair. If you have some form of seller protection/support you most likely want to reach out to this to be safe. If you don't, you can always attempt to replace the IC yourself. As of writing both the TS80P and Pinecil use the FUSB302.
|
Generally, this means either something went very awry in the firmware, or the chip is not answering as would normally be expected. Try rolling back to an earlier release to confirm if the issue still persists then the device may need repair. If you have some form of seller protection/support, you most likely want to reach out to this to be safe. If you don't, you can always attempt to replace the IC yourself. As of writing both the TS80P and Pinecil use the FUSB302.
|
||||||
|
|
||||||
**Note this warning will only be shown the first few times until settings are reset**
|
**Note this warning will only be shown the first few times until settings are reset**
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Startup Logos
|
# Startup Logos
|
||||||
|
|
||||||
This firmware supports a user created bootup logo.
|
This firmware supports a user created bootup logo.
|
||||||
By default there is _not_ one included in the firmware, as this means that once flashed they generally stay.
|
By default, there is _not_ one included in the firmware, as this means that once flashed they generally stay.
|
||||||
|
|
||||||
## Generating the Logo files
|
## Generating the Logo files
|
||||||
|
|
||||||
@@ -27,7 +27,7 @@ Run `python3 img2logo.py --help` to see available options.
|
|||||||
### Miniware (TS100/TS80/TS80P)
|
### Miniware (TS100/TS80/TS80P)
|
||||||
|
|
||||||
Upload the HEX file to the iron in DFU mode and, if the file's extension changes to .RDY, your custom splash screen should show up on startup.
|
Upload the HEX file to the iron in DFU mode and, if the file's extension changes to .RDY, your custom splash screen should show up on startup.
|
||||||
You perform this the same way as if you were flashing a new firmware, and all of the existing notes around this apply.
|
You perform this the same way as if you were flashing a new firmware, and all the existing notes around this apply.
|
||||||
|
|
||||||
If you have flashed the `IronOS-dfu` alternative bootloader, you should use the `.dfu` files instead
|
If you have flashed the `IronOS-dfu` alternative bootloader, you should use the `.dfu` files instead
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ Holding the button at the front of the iron will enter boost mode (if enabled).
|
|||||||
This menu allows you to cycle through all the options and set their values.
|
This menu allows you to cycle through all the options and set their values.
|
||||||
The button near the USB cycles through the options, and the one near the tip changes the selected option.
|
The button near the USB cycles through the options, and the one near the tip changes the selected option.
|
||||||
Note that settings are not saved until you exit the menu.
|
Note that settings are not saved until you exit the menu.
|
||||||
If you leave the unit alone (ie don't press any buttons) on a setting, after 3 seconds the screen will scroll a rough description of the setting.
|
If you leave the unit alone (i.e., don't press any buttons) on a setting, after 3 seconds the screen will scroll a rough description of the setting.
|
||||||
|
|
||||||
The menu is arranged so that the most often used settings are first.
|
The menu is arranged so that the most often used settings are first.
|
||||||
With submenus being selected to enter using the front button (as if you were going to change the setting).
|
With submenus being selected to enter using the front button (as if you were going to change the setting).
|
||||||
@@ -41,7 +41,7 @@ To calibrate your iron:
|
|||||||
Some tips will have an offset on their readings, to calibrate this out perform the following steps:
|
Some tips will have an offset on their readings, to calibrate this out perform the following steps:
|
||||||
|
|
||||||
1. Connect power to your iron
|
1. Connect power to your iron
|
||||||
2. Make sure the tip is at room temperature (ie. wait for a fair while after using the iron before calibration)
|
2. Make sure the tip is at room temperature (i.e., wait for a fair while after using the iron before calibration)
|
||||||
3. Enter the settings menu
|
3. Enter the settings menu
|
||||||
4. Scroll down to the advanced menu, and then the temperature calibration
|
4. Scroll down to the advanced menu, and then the temperature calibration
|
||||||
5. Press the button to change the option (tip button)
|
5. Press the button to change the option (tip button)
|
||||||
@@ -54,6 +54,6 @@ Some tips will have an offset on their readings, to calibrate this out perform t
|
|||||||
|
|
||||||
### Boost mode
|
### Boost mode
|
||||||
|
|
||||||
This allows you to change the front key (one near the tip) to become a boost button when you hold it for > 2 seconds. This allows you to set this button to change the soldering temperature for short periods. For example when soldering a big joint and you want to boost the temperature a bit.
|
This allows you to change the front key (one near the tip) to become a boost button when you hold it for > 2 seconds. This allows you to set this button to change the soldering temperature for short periods. For example, when soldering a big joint and you want to boost the temperature a bit.
|
||||||
|
|
||||||
The boost temperature is set in the settings menu.
|
The boost temperature is set in the settings menu.
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ Combining these two gives the common equation, power is `Volts (V) squared / Res
|
|||||||
The resistance of the tip is fixed, ~7.5 ohms for the TS100/Pinecil and ~4.5 ohms for the TS80(P).
|
The resistance of the tip is fixed, ~7.5 ohms for the TS100/Pinecil and ~4.5 ohms for the TS80(P).
|
||||||
|
|
||||||
This means that for both irons, the power delivered to the soldering tip is proportional to the voltage used, squared.
|
This means that for both irons, the power delivered to the soldering tip is proportional to the voltage used, squared.
|
||||||
This is why the TS100 performs poorly when run off 12 V power supplies.
|
Therefore the TS100 performs poorly when run off 12 V power supplies.
|
||||||
|
|
||||||
## Output Control & Regulation
|
## Output Control & Regulation
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ If you can open up your iron, give it a good look at all the connection points,
|
|||||||
|
|
||||||
If you are finding the tip is reading high; the first fields to check in the Debug menu are `RTip` and `CHan`.
|
If you are finding the tip is reading high; the first fields to check in the Debug menu are `RTip` and `CHan`.
|
||||||
|
|
||||||
- `RTip` is the raw tip reading in μV; at cool this should be around 700-1000 for Larger tips and ~1500 for smaller tips (TS80's)
|
- `RTip` is the raw tip reading in μV; at cool this should be around 700-1000 for larger tips and ~1500 for smaller tips (TS80's)
|
||||||
- `CHan` is the temperature of the temperature sensor on the PCB in degrees Celsius \* 10. So 29 °C ambient should read as 290
|
- `CHan` is the temperature of the temperature sensor on the PCB in degrees Celsius \* 10. So 29 °C ambient should read as 290
|
||||||
|
|
||||||
### RTip is out of spec
|
### RTip is out of spec
|
||||||
|
|||||||
@@ -20,7 +20,9 @@ This project is considered feature complete for use as a soldering iron, _so ple
|
|||||||
|
|
||||||
_This firmware does **NOT** support the USB port while running for changing settings. This is done through the onscreen menu only. Logos are edited using the tool or python script and uploaded in DFU mode._
|
_This firmware does **NOT** support the USB port while running for changing settings. This is done through the onscreen menu only. Logos are edited using the tool or python script and uploaded in DFU mode._
|
||||||
|
|
||||||
To get started with this firmware, please jump over to [here](Documentation/GettingStarted.md).
|
## Getting Started
|
||||||
|
|
||||||
|
To get started with IronOS firmware, please jump to [Getting Started Guide](Documentation/GettingStarted.md).
|
||||||
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.
|
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.
|
Long hold the rear button in soldering mode to exit back to the start screen.
|
||||||
|
|
||||||
|
|||||||
@@ -102,13 +102,18 @@ def get_constants(build_version: str) -> List[Tuple[str, str]]:
|
|||||||
("SymbolDot", "."),
|
("SymbolDot", "."),
|
||||||
("SymbolDegC", "C"),
|
("SymbolDegC", "C"),
|
||||||
("SymbolDegF", "F"),
|
("SymbolDegF", "F"),
|
||||||
("SymbolMinutes", "M"),
|
("SymbolMinutes", "m"),
|
||||||
("SymbolSeconds", "S"),
|
("SymbolSeconds", "s"),
|
||||||
("SymbolWatts", "W"),
|
("SymbolWatts", "W"),
|
||||||
("SymbolVolts", "V"),
|
("SymbolVolts", "V"),
|
||||||
|
("SymbolAmps", "A"),
|
||||||
("SymbolDC", "DC"),
|
("SymbolDC", "DC"),
|
||||||
("SymbolCellCount", "S"),
|
("SymbolCellCount", "S"),
|
||||||
("SymbolVersionNumber", build_version),
|
("SymbolVersionNumber", build_version),
|
||||||
|
("SymbolPDDebug", "PD Debug"),
|
||||||
|
("SymbolState", "State"),
|
||||||
|
("SymbolNoVBus", "No VBus"),
|
||||||
|
("SymbolVBus", "VBus"),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -109,7 +109,7 @@
|
|||||||
},
|
},
|
||||||
"CooldownBlink": {
|
"CooldownBlink": {
|
||||||
"text2": ["Мігценне t°", "пры астуджэнні"],
|
"text2": ["Мігценне t°", "пры астуджэнні"],
|
||||||
"desc": "Міргаць тэмпературай на экране астуджэння, пакуль джага яшчэ гарачае"
|
"desc": "Міргаць тэмпературай на экране астуджэння, пакуль джала яшчэ гарачае"
|
||||||
},
|
},
|
||||||
"TemperatureCalibration": {
|
"TemperatureCalibration": {
|
||||||
"text2": ["Каліброўка", "тэмпературы"],
|
"text2": ["Каліброўка", "тэмпературы"],
|
||||||
@@ -157,7 +157,7 @@
|
|||||||
},
|
},
|
||||||
"PowerPulsePower": {
|
"PowerPulsePower": {
|
||||||
"text2": ["Сіла імп.", "сілкав. Вт"],
|
"text2": ["Сіла імп.", "сілкав. Вт"],
|
||||||
"desc": "Сіла імпульса щтрымливаючага ад сну павербанку ці іншай крыніцы сілкавання"
|
"desc": "Сіла імпульса ўтрымливаючага ад сну павербанку ці іншай крыніцы сілкавання"
|
||||||
},
|
},
|
||||||
"HallEffSensitivity": {
|
"HallEffSensitivity": {
|
||||||
"text2": ["Эфект Хола", "адчувальнасць"],
|
"text2": ["Эфект Хола", "адчувальнасць"],
|
||||||
@@ -177,7 +177,7 @@
|
|||||||
},
|
},
|
||||||
"AnimSpeed": {
|
"AnimSpeed": {
|
||||||
"text2": ["Хуткасць", "анімацыі"],
|
"text2": ["Хуткасць", "анімацыі"],
|
||||||
"desc": "Хуткасць анімацыі гузікаў у галоўным меню (Мілісекунды) (А=Адключана | Н=Нізкі | С=Сярэдні | В=Высокі)"
|
"desc": "Хуткасць анімацыі гузікаў у галоўным меню (Мілісекунды) (А=Адключана | Н=Нізкая | С=Сярэдняя | В=Высокая)"
|
||||||
},
|
},
|
||||||
"PowerPulseWait": {
|
"PowerPulseWait": {
|
||||||
"text2": ["Імпульс магутнасці", "час чакання"],
|
"text2": ["Імпульс магутнасці", "час чакання"],
|
||||||
@@ -200,8 +200,8 @@
|
|||||||
"desc": "Інвертаваць колеры OLED-экрана"
|
"desc": "Інвертаваць колеры OLED-экрана"
|
||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Лагатып загрузкі", "працягласць"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Усталяваць працягласць лагатыпа загрузкі (s=Секунды)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,207 +1,339 @@
|
|||||||
{
|
{
|
||||||
"languageCode": "CS",
|
"languageCode": "CS",
|
||||||
"languageLocalName": "Český",
|
"languageLocalName": "Český",
|
||||||
"fonts": ["ascii_basic", "latin_extended"],
|
"fonts": [
|
||||||
"tempUnitFahrenheit": false,
|
"ascii_basic",
|
||||||
"messages": {
|
"latin_extended"
|
||||||
"SettingsCalibrationWarning": "Ujistěte se, že hrot má pokojovou teplotu!",
|
],
|
||||||
"SettingsResetWarning": "Opravdu chcete resetovat zařízení do továrního nastavení?",
|
"tempUnitFahrenheit": false,
|
||||||
"UVLOWarningString": "Nízké DC",
|
"messages": {
|
||||||
"UndervoltageString": "! Nízké napětí !",
|
"SettingsCalibrationWarning": "Ujistěte se, že hrot má pokojovou teplotu!",
|
||||||
"InputVoltageString": "Napětí: ",
|
"SettingsResetWarning": "Opravdu chcete resetovat zařízení do továrního nastavení?",
|
||||||
"SleepingSimpleString": "Zzz ",
|
"UVLOWarningString": "Nízké DC",
|
||||||
"SleepingAdvancedString": "Režim spánku...",
|
"UndervoltageString": "Nízké napětí",
|
||||||
"SleepingTipAdvancedString": "Hrot:",
|
"InputVoltageString": "Napětí: ",
|
||||||
"OffString": "Vyp"
|
"SleepingSimpleString": "Zzz ",
|
||||||
},
|
"SleepingAdvancedString": "Režim spánku...",
|
||||||
"messagesWarn": {
|
"SleepingTipAdvancedString": "Hrot:",
|
||||||
"ResetOKMessage": "Reset OK",
|
"OffString": "Vyp"
|
||||||
"SettingsResetMessage": ["Tov. nas. obnov.", ""],
|
},
|
||||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
"messagesWarn": {
|
||||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
"ResetOKMessage": "Reset OK",
|
||||||
"LockingKeysString": "LOCKED",
|
"SettingsResetMessage": [
|
||||||
"UnlockingKeysString": "UNLOCKED",
|
"Nějaká nastavení",
|
||||||
"WarningKeysLockedString": "!LOCKED!",
|
"byla změněna!"
|
||||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
],
|
||||||
},
|
"NoAccelerometerMessage": [
|
||||||
"characters": {
|
"Akcelerometr",
|
||||||
"SettingRightChar": "P",
|
"nebyl detekován!"
|
||||||
"SettingLeftChar": "L",
|
],
|
||||||
"SettingAutoChar": "A",
|
"NoPowerDeliveryMessage": [
|
||||||
"SettingOffChar": "O",
|
"Žádný IO USB-PD",
|
||||||
"SettingSlowChar": "P",
|
"nebyl detekován!"
|
||||||
"SettingMediumChar": "M",
|
],
|
||||||
"SettingFastChar": "R",
|
"LockingKeysString": "ZAMČENO",
|
||||||
"SettingStartNoneChar": "O",
|
"UnlockingKeysString": "ODEMČENO",
|
||||||
"SettingStartSolderingChar": "P",
|
"WarningKeysLockedString": "ZAMČENO!",
|
||||||
"SettingStartSleepChar": "S",
|
"WarningThermalRunaway": [
|
||||||
"SettingStartSleepOffChar": "M",
|
"Teplotní",
|
||||||
"SettingSensitivityOff": "O",
|
"Ochrana"
|
||||||
"SettingSensitivityLow": "L",
|
]
|
||||||
"SettingSensitivityMedium": "M",
|
},
|
||||||
"SettingSensitivityHigh": "H",
|
"characters": {
|
||||||
"SettingLockDisableChar": "D",
|
"SettingRightChar": "P",
|
||||||
"SettingLockBoostChar": "B",
|
"SettingLeftChar": "L",
|
||||||
"SettingLockFullChar": "F"
|
"SettingAutoChar": "A",
|
||||||
},
|
"SettingOffChar": "D",
|
||||||
"menuGroups": {
|
"SettingSlowChar": "P",
|
||||||
"PowerMenu": {
|
"SettingMediumChar": "S",
|
||||||
"text2": ["Power", "settings"],
|
"SettingFastChar": "R",
|
||||||
"desc": "Power settings"
|
"SettingStartNoneChar": "V",
|
||||||
},
|
"SettingStartSolderingChar": "P",
|
||||||
"SolderingMenu": {
|
"SettingStartSleepChar": "S",
|
||||||
"text2": ["Pájecí", "nastavení"],
|
"SettingStartSleepOffChar": "M",
|
||||||
"desc": "Nastavení pájení (boost, auto start...)."
|
"SettingSensitivityOff": "O",
|
||||||
},
|
"SettingSensitivityLow": "M",
|
||||||
"PowerSavingMenu": {
|
"SettingSensitivityMedium": "S",
|
||||||
"text2": ["Režim", "spánku"],
|
"SettingSensitivityHigh": "V",
|
||||||
"desc": "Nastavení režimu spánku, automatického vypnutí..."
|
"SettingLockDisableChar": "Z",
|
||||||
},
|
"SettingLockBoostChar": "B",
|
||||||
"UIMenu": {
|
"SettingLockFullChar": "U"
|
||||||
"text2": ["Uživatelské", "rozhraní"],
|
},
|
||||||
"desc": "Nastavení uživatelského rozhraní."
|
"menuGroups": {
|
||||||
},
|
"PowerMenu": {
|
||||||
"AdvancedMenu": {
|
"text2": [
|
||||||
"text2": ["Pokročilé", "volby"],
|
"Napájecí",
|
||||||
"desc": "Pokročilé volby (detailní obrazovky, kalibrace, tovární nastavení...)."
|
"nastavení"
|
||||||
}
|
],
|
||||||
},
|
"desc": "Nastavení napájení"
|
||||||
"menuOptions": {
|
},
|
||||||
"DCInCutoff": {
|
"SolderingMenu": {
|
||||||
"text2": ["Zdroj", "napájení"],
|
"text2": [
|
||||||
"desc": "Při nižším napětí ukončí pájení (DC=10V | ?S=?x3,3V pro LiPo, LiIon...)."
|
"Pájecí",
|
||||||
},
|
"nastavení"
|
||||||
"SleepTemperature": {
|
],
|
||||||
"text2": ["Teplota v", "r. spánku"],
|
"desc": "Nastavení pájení"
|
||||||
"desc": "Teplota v režimu spánku."
|
},
|
||||||
},
|
"PowerSavingMenu": {
|
||||||
"SleepTimeout": {
|
"text2": [
|
||||||
"text2": ["Čas do", "r. spánku"],
|
"Režim",
|
||||||
"desc": "Čas do režimu spánku (Minut | Sekund)."
|
"spánku"
|
||||||
},
|
],
|
||||||
"ShutdownTimeout": {
|
"desc": "Nastavení úspory energie"
|
||||||
"text2": ["Čas do", "vypnutí"],
|
},
|
||||||
"desc": "Čas do automatického vypnutí (Minut)."
|
"UIMenu": {
|
||||||
},
|
"text2": [
|
||||||
"MotionSensitivity": {
|
"Uživatelské",
|
||||||
"text2": ["Citlivost", "det. pohybu"],
|
"rozhraní"
|
||||||
"desc": "Citlivost detekce pohybu (0=Vyp | 1=Min | ... | 9=Max)."
|
],
|
||||||
},
|
"desc": "Nastavení uživatelského rozhraní"
|
||||||
"TemperatureUnit": {
|
},
|
||||||
"text2": ["Jednotky", "teploty"],
|
"AdvancedMenu": {
|
||||||
"desc": "Jednotky měření teploty (C=Celsius | F=Fahrenheit)."
|
"text2": [
|
||||||
},
|
"Pokročilá",
|
||||||
"AdvancedIdle": {
|
"nastavení"
|
||||||
"text2": ["Podrobnosti", "na vých. obr."],
|
],
|
||||||
"desc": "Zobrazit podrobnosti na výchozí obrazovce?"
|
"desc": "Pokročilá nastavení"
|
||||||
},
|
}
|
||||||
"DisplayRotation": {
|
},
|
||||||
"text2": ["Orientace", "obrazovky"],
|
"menuOptions": {
|
||||||
"desc": "Orientace obrazovky (P=Pravák | L=Levák | A=Auto)."
|
"DCInCutoff": {
|
||||||
},
|
"text2": [
|
||||||
"BoostTemperature": {
|
"Zdroj",
|
||||||
"text2": ["Teplota v", "r. boost"],
|
"napájení"
|
||||||
"desc": "Teplota v režimu boost."
|
],
|
||||||
},
|
"desc": "Při nižším napětí ukončit pájení (DC 10V) (S 3,3V na článek, zakázat omezení napájení)."
|
||||||
"AutoStart": {
|
},
|
||||||
"text2": ["Automatický", "start"],
|
"SleepTemperature": {
|
||||||
"desc": "Při startu ihned nahřát hrot? (O=Pryč | P=Pájení | S=Spát | M=Spát teplota místnosti)"
|
"text2": [
|
||||||
},
|
"Teplota",
|
||||||
"CooldownBlink": {
|
"ve spánku"
|
||||||
"text2": ["Blikáni při", "chladnutí"],
|
],
|
||||||
"desc": "Blikání teploty při chladnutí, dokud je hrot horký?"
|
"desc": "Teplota hrotu v režimu spánku."
|
||||||
},
|
},
|
||||||
"TemperatureCalibration": {
|
"SleepTimeout": {
|
||||||
"text2": ["Kalibrovat", "teplotu?"],
|
"text2": [
|
||||||
"desc": "Kalibrace měření teploty."
|
"Čas",
|
||||||
},
|
"do spánku"
|
||||||
"SettingsReset": {
|
],
|
||||||
"text2": ["Tovární", "nastavení?"],
|
"desc": "\"Režim spánku\" naběhne v (s=sekundách | m=minutách)"
|
||||||
"desc": "Obnovení továrního nastavení."
|
},
|
||||||
},
|
"ShutdownTimeout": {
|
||||||
"VoltageCalibration": {
|
"text2": [
|
||||||
"text2": ["Kalibrovat", "vstupní napětí?"],
|
"Čas do",
|
||||||
"desc": "Kalibrace vstupního napětí. Tlačítky uprav, podržením potvrď."
|
"vypnutí"
|
||||||
},
|
],
|
||||||
"AdvancedSoldering": {
|
"desc": "Interval automatického vypnutí (m=minut)"
|
||||||
"text2": ["Podrobnosti", "při pájení"],
|
},
|
||||||
"desc": "Zobrazit podrobnosti při pájení?"
|
"MotionSensitivity": {
|
||||||
},
|
"text2": [
|
||||||
"ScrollingSpeed": {
|
"Citlivost",
|
||||||
"text2": ["Rychlost", "popisků"],
|
"na pohyb"
|
||||||
"desc": "Rychlost posuvu popisků podobných tomuto (P=Pomalu | R=Rychle)"
|
],
|
||||||
},
|
"desc": "0=vyp | 1=nejméně citlivé | ... | 9=nejvíce citlivé"
|
||||||
"QCMaxVoltage": {
|
},
|
||||||
"text2": ["Výkon", "ve wattech"],
|
"TemperatureUnit": {
|
||||||
"desc": "Výkon použítého napájecího adaptéru ve wattech."
|
"text2": [
|
||||||
},
|
"Jednotka",
|
||||||
"PDNegTimeout": {
|
"teploty"
|
||||||
"text2": ["PD", "timeout"],
|
],
|
||||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
"desc": "C=Celsius | F=Fahrenheit"
|
||||||
},
|
},
|
||||||
"PowerLimit": {
|
"AdvancedIdle": {
|
||||||
"text2": ["Omezení", "Výkonu"],
|
"text2": [
|
||||||
"desc": "Maximální příkon (Watty)"
|
"Podrobná obr.",
|
||||||
},
|
"nečinnosti"
|
||||||
"ReverseButtonTempChange": {
|
],
|
||||||
"text2": ["Prohodit", "tl. +-?"],
|
"desc": "Zobrazit detailní informace malým fontem na obrazovce nečinnosti"
|
||||||
"desc": "Prohodí tlačítka plus a minus pro změnu teploty hrotu."
|
},
|
||||||
},
|
"DisplayRotation": {
|
||||||
"TempChangeShortStep": {
|
"text2": [
|
||||||
"text2": ["Krok teploty", "krátký?"],
|
"Orientace",
|
||||||
"desc": "Velikost skoku při změně teploty krátkým stiskem tlačítka!"
|
"obrazovky"
|
||||||
},
|
],
|
||||||
"TempChangeLongStep": {
|
"desc": "P=pravák | L=levák | A=automaticky"
|
||||||
"text2": ["Krok teploty", "dlouhý?"],
|
},
|
||||||
"desc": "Velikost skoku při změně teploty dlouhým stiskem tlačítka!"
|
"BoostTemperature": {
|
||||||
},
|
"text2": [
|
||||||
"PowerPulsePower": {
|
"Teplota",
|
||||||
"text2": ["Intenzita", "Výkon. pulsu"],
|
"boostu"
|
||||||
"desc": "Puls pro udržení zařízení v chodu (kvůli power bankám)."
|
],
|
||||||
},
|
"desc": "Teplota hrotu v \"režimu boost\""
|
||||||
"HallEffSensitivity": {
|
},
|
||||||
"text2": ["Hall sensor", "sensitivity"],
|
"AutoStart": {
|
||||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=Vyp | 1=Min | ... | 9=Max)"
|
"text2": [
|
||||||
},
|
"Chování",
|
||||||
"LockingMode": {
|
"při startu"
|
||||||
"text2": ["Allow locking", "buttons"],
|
],
|
||||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
"desc": "V=vypnuto | P=pájecí teplota | S=spánková teplota | M=zahřát hrot po pohybu"
|
||||||
},
|
},
|
||||||
"MinVolCell": {
|
"CooldownBlink": {
|
||||||
"text2": ["Minimum", "voltage"],
|
"text2": [
|
||||||
"desc": "Minimum allowed voltage per cell (3S: 3 - 3,7V | 4-6S: 2,4 - 3,7V)"
|
"Blikáni při",
|
||||||
},
|
"chladnutí"
|
||||||
"AnimLoop": {
|
],
|
||||||
"text2": ["Anim.", "loop"],
|
"desc": "Blikat teplotou při chladnutí dokud je hrot horký"
|
||||||
"desc": "Loop icon animations in main menu"
|
},
|
||||||
},
|
"TemperatureCalibration": {
|
||||||
"AnimSpeed": {
|
"text2": [
|
||||||
"text2": ["Anim.", "speed"],
|
"Kalibrovat",
|
||||||
"desc": "Pace of icon animations in menu (O=off | P=slow | M=medium | R=fast)"
|
"teplotu?"
|
||||||
},
|
],
|
||||||
"PowerPulseWait": {
|
"desc": "Začít kalibraci měření teploty hrotu"
|
||||||
"text2": ["Power pulse", "delay"],
|
},
|
||||||
"desc": "Delay before keep-awake-pulse is triggered (x 2,5s)"
|
"SettingsReset": {
|
||||||
},
|
"text2": [
|
||||||
"PowerPulseDuration": {
|
"Obnovit tovární",
|
||||||
"text2": ["Power pulse", "duration"],
|
"nastavení?"
|
||||||
"desc": "Keep-awake-pulse duration (x 250ms)"
|
],
|
||||||
},
|
"desc": "Obnovit všechna nastavení na výchozí"
|
||||||
"LanguageSwitch": {
|
},
|
||||||
"text2": ["Řeč:", " CS Český"],
|
"VoltageCalibration": {
|
||||||
"desc": ""
|
"text2": [
|
||||||
},
|
"Kalibrovat",
|
||||||
"Brightness": {
|
"vstupní napětí?"
|
||||||
"text2": ["Screen", "brightness"],
|
],
|
||||||
"desc": "Adjust the brightness of the OLED screen"
|
"desc": "Začít kalibraci vstupního napětí (dlouhý stisk pro ukončení)"
|
||||||
},
|
},
|
||||||
"ColourInversion": {
|
"AdvancedSoldering": {
|
||||||
"text2": ["Invert", "screen"],
|
"text2": [
|
||||||
"desc": "Invert the colours of the OLED screen"
|
"Podrobná obr.",
|
||||||
},
|
"pájení"
|
||||||
"LOGOTime": {
|
],
|
||||||
"text2": ["Boot logo", "duration"],
|
"desc": "Zobrazit detailní informace malým fontem na obrazovce pájení"
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
},
|
||||||
}
|
"ScrollingSpeed": {
|
||||||
}
|
"text2": [
|
||||||
}
|
"Rychlost",
|
||||||
|
"posouvání"
|
||||||
|
],
|
||||||
|
"desc": "Rychlost posouvání popisků podobných tomuto (P=pomalu | R=rychle)"
|
||||||
|
},
|
||||||
|
"QCMaxVoltage": {
|
||||||
|
"text2": [
|
||||||
|
"Napětí",
|
||||||
|
"QC"
|
||||||
|
],
|
||||||
|
"desc": "Maximální napětí QC pro jednání páječkou"
|
||||||
|
},
|
||||||
|
"PDNegTimeout": {
|
||||||
|
"text2": [
|
||||||
|
"PD",
|
||||||
|
"timeout"
|
||||||
|
],
|
||||||
|
"desc": "Maximální prodleva při jednání PD ve 100ms krocích pro kompatibilitu s některými QC nabíječkami"
|
||||||
|
},
|
||||||
|
"PowerLimit": {
|
||||||
|
"text2": [
|
||||||
|
"Omezení",
|
||||||
|
"Výkonu"
|
||||||
|
],
|
||||||
|
"desc": "Maximální příkon páječky (W=watt)"
|
||||||
|
},
|
||||||
|
"ReverseButtonTempChange": {
|
||||||
|
"text2": [
|
||||||
|
"Prohodit",
|
||||||
|
"tl. +-?"
|
||||||
|
],
|
||||||
|
"desc": "Prohodit tlačítka pro změnu teploty"
|
||||||
|
},
|
||||||
|
"TempChangeShortStep": {
|
||||||
|
"text2": [
|
||||||
|
"Krok teploty",
|
||||||
|
"krátký?"
|
||||||
|
],
|
||||||
|
"desc": "Velikost přídavku při změně teploty krátkým stiskem tlačítka"
|
||||||
|
},
|
||||||
|
"TempChangeLongStep": {
|
||||||
|
"text2": [
|
||||||
|
"Krok teploty",
|
||||||
|
"dlouhý?"
|
||||||
|
],
|
||||||
|
"desc": "Velikost přídavku při změně teploty dlouhým stiskem tlačítka"
|
||||||
|
},
|
||||||
|
"PowerPulsePower": {
|
||||||
|
"text2": [
|
||||||
|
"Napájecí",
|
||||||
|
"pulz"
|
||||||
|
],
|
||||||
|
"desc": "Intenzita výkonu pulzu pro udržení páječky vzhůru (watt)"
|
||||||
|
},
|
||||||
|
"HallEffSensitivity": {
|
||||||
|
"text2": [
|
||||||
|
"Citlivost",
|
||||||
|
"Hall. čidla"
|
||||||
|
],
|
||||||
|
"desc": "Citlivost Hallova čidla pro detekci spánku (0=vypnuto | 1=nejméně citlivé | ... | 9=nejvíce citlivé)"
|
||||||
|
},
|
||||||
|
"LockingMode": {
|
||||||
|
"text2": [
|
||||||
|
"Povolit zamč.",
|
||||||
|
"tlačítek"
|
||||||
|
],
|
||||||
|
"desc": "Při pájení podržte obě tlačítka pro jejich zamčení (Z=zakázáno | B=pouze v režimu boost | U=úplné zamčení)"
|
||||||
|
},
|
||||||
|
"MinVolCell": {
|
||||||
|
"text2": [
|
||||||
|
"Minimální",
|
||||||
|
"napětí"
|
||||||
|
],
|
||||||
|
"desc": "Minimální dovolené napětí po článku (3S: 3 - 3,7V | 4-6S: 2,4 - 3,7V)"
|
||||||
|
},
|
||||||
|
"AnimLoop": {
|
||||||
|
"text2": [
|
||||||
|
"Anim.",
|
||||||
|
"smyčka"
|
||||||
|
],
|
||||||
|
"desc": "Animovat ikony hlavního menu ve smyčce"
|
||||||
|
},
|
||||||
|
"AnimSpeed": {
|
||||||
|
"text2": [
|
||||||
|
"Anim.",
|
||||||
|
"rychlost"
|
||||||
|
],
|
||||||
|
"desc": "Tempo animace ikon v menu (O=vypnuto | P=pomalu | S=středně | R=rychle)"
|
||||||
|
},
|
||||||
|
"PowerPulseWait": {
|
||||||
|
"text2": [
|
||||||
|
"Prodleva",
|
||||||
|
"napáj. pulzu"
|
||||||
|
],
|
||||||
|
"desc": "Prodleva než je spuštěn pulz pro udržení páječky vzhůru pulzu pro udržení páječky vzhůru (x 2,5s)"
|
||||||
|
},
|
||||||
|
"PowerPulseDuration": {
|
||||||
|
"text2": [
|
||||||
|
"Délka",
|
||||||
|
"napáj. pulzu"
|
||||||
|
],
|
||||||
|
"desc": "Délka pulzu pro udržení páječky vzhůru (x 250ms)"
|
||||||
|
},
|
||||||
|
"LanguageSwitch": {
|
||||||
|
"text2": [
|
||||||
|
"Jazyk:",
|
||||||
|
" CS Český"
|
||||||
|
],
|
||||||
|
"desc": "Současný jazyk firmwaru"
|
||||||
|
},
|
||||||
|
"Brightness": {
|
||||||
|
"text2": [
|
||||||
|
"Jas",
|
||||||
|
"obrazovky"
|
||||||
|
],
|
||||||
|
"desc": "Upravit jas OLED"
|
||||||
|
},
|
||||||
|
"ColourInversion": {
|
||||||
|
"text2": [
|
||||||
|
"Invertovat",
|
||||||
|
"obrazovku"
|
||||||
|
],
|
||||||
|
"desc": "Invertovat barvy na OLED"
|
||||||
|
},
|
||||||
|
"LOGOTime": {
|
||||||
|
"text2": [
|
||||||
|
"Trvání",
|
||||||
|
"boot loga"
|
||||||
|
],
|
||||||
|
"desc": "Nastavení doby trvání boot loga (s=sekundy)"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Ruhever-", "zögerung"],
|
"text2": ["Ruhever-", "zögerung"],
|
||||||
"desc": "Dauer vor Übergang in den Ruhemodus (S=Sekunden | M=Minuten)"
|
"desc": "Dauer vor Übergang in den Ruhemodus (s=Sekunden | m=Minuten)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Abschalt-", "verzög."],
|
"text2": ["Abschalt-", "verzög."],
|
||||||
"desc": "Dauer vor automatischer Abschaltung (M=Minuten)"
|
"desc": "Dauer vor automatischer Abschaltung (m=Minuten)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Bewegungs-", "empfindlichk."],
|
"text2": ["Bewegungs-", "empfindlichk."],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Startlogo-", "dauer"],
|
"text2": ["Startlogo-", "dauer"],
|
||||||
"desc": "Legt die Dauer der Anzeige des Startlogos fest (S=Sekunden)"
|
"desc": "Legt die Dauer der Anzeige des Startlogos fest (s=Sekunden)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Sleep", "timeout"],
|
"text2": ["Sleep", "timeout"],
|
||||||
"desc": "Interval before \"sleep mode\" kicks in (S=seconds | M=minutes)"
|
"desc": "Interval before \"sleep mode\" kicks in (s=seconds | m=minutes)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Shutdown", "timeout"],
|
"text2": ["Shutdown", "timeout"],
|
||||||
"desc": "Interval before the iron shuts down (M=minutes)"
|
"desc": "Interval before the iron shuts down (m=minutes)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Motion", "sensitivity"],
|
"text2": ["Motion", "sensitivity"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Lepotilan", "viive"],
|
"text2": ["Lepotilan", "viive"],
|
||||||
"desc": "\"Lepotilan\" ajastus (S=sekuntia | M=minuuttia)"
|
"desc": "\"Lepotilan\" ajastus (s=sekuntia | m=minuuttia)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Sammutus", "viive"],
|
"text2": ["Sammutus", "viive"],
|
||||||
"desc": "Automaattisen sammutuksen ajastus (M=minuuttia)"
|
"desc": "Automaattisen sammutuksen ajastus (m=minuuttia)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Liikkeen", "herkkyys"],
|
"text2": ["Liikkeen", "herkkyys"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Délai", "veille"],
|
"text2": ["Délai", "veille"],
|
||||||
"desc": "Délai avant mise en veille (S=secondes | M=minutes)"
|
"desc": "Délai avant mise en veille (s=secondes | m=minutes)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Délai", "extinction"],
|
"text2": ["Délai", "extinction"],
|
||||||
"desc": "Délai avant extinction (M=minutes)"
|
"desc": "Délai avant extinction (m=minutes)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Sensibilité", "au mouvement"],
|
"text2": ["Sensibilité", "au mouvement"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Timer", "riposo"],
|
"text2": ["Timer", "riposo"],
|
||||||
"desc": "Imposta il timer per entrare in modalità Riposo [minuti/secondi]"
|
"desc": "Imposta il timer per entrare in modalità Riposo [secondi/minuti]"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Timer", "spegnimento"],
|
"text2": ["Timer", "spegnimento"],
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": "待機遅延",
|
"text2": "待機遅延",
|
||||||
"desc": "スタンバイモードに入るまでの待機時間 <S=秒 | M=分>"
|
"desc": "スタンバイモードに入るまでの待機時間 <s=秒 | m=分>"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": "自動オフ",
|
"text2": "自動オフ",
|
||||||
"desc": "自動電源オフまでの待機時間 <M=分>"
|
"desc": "自動電源オフまでの待機時間 <m=分>"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": "動きの感度",
|
"text2": "動きの感度",
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,207 +1,339 @@
|
|||||||
{
|
{
|
||||||
"languageCode": "NL",
|
"languageCode": "NL",
|
||||||
"languageLocalName": "Nederlands",
|
"languageLocalName": "Nederlands",
|
||||||
"fonts": ["ascii_basic", "latin_extended"],
|
"fonts": [
|
||||||
"tempUnitFahrenheit": false,
|
"ascii_basic",
|
||||||
"messages": {
|
"latin_extended"
|
||||||
"SettingsCalibrationWarning": "Zorg ervoor dat te punt op kamertemperatuur is voor je verder gaat!",
|
],
|
||||||
"SettingsResetWarning": "Weet je zeker dat je de fabrieksinstellingen terug wil zetten?",
|
"tempUnitFahrenheit": false,
|
||||||
"UVLOWarningString": "DC Laag",
|
"messages": {
|
||||||
"UndervoltageString": "Onderspanning",
|
"SettingsCalibrationWarning": "Zorg ervoor dat de punt op kamertemperatuur is voor je verder gaat!",
|
||||||
"InputVoltageString": "Input V: ",
|
"SettingsResetWarning": "Weet je zeker dat je de fabrieksinstellingen terug wilt zetten?",
|
||||||
"SleepingSimpleString": "Zzzz",
|
"UVLOWarningString": "DC Laag",
|
||||||
"SleepingAdvancedString": "Slaapstand...",
|
"UndervoltageString": "Onderspanning",
|
||||||
"SleepingTipAdvancedString": "Punt:",
|
"InputVoltageString": "Voeding V: ",
|
||||||
"OffString": "Uit"
|
"SleepingSimpleString": "Zzzz",
|
||||||
},
|
"SleepingAdvancedString": "Slaapstand...",
|
||||||
"messagesWarn": {
|
"SleepingTipAdvancedString": "Punt:",
|
||||||
"ResetOKMessage": "Reset OK",
|
"OffString": "Uit"
|
||||||
"SettingsResetMessage": ["Instellingen", "zijn gereset!"],
|
},
|
||||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
"messagesWarn": {
|
||||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
"ResetOKMessage": "Reset OK",
|
||||||
"LockingKeysString": " GEBLOKKEERD",
|
"SettingsResetMessage": [
|
||||||
"UnlockingKeysString": "GEDEBLOKKEERD",
|
"Instellingen",
|
||||||
"WarningKeysLockedString": "!GEBLOKKEERD!",
|
"zijn gereset!"
|
||||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
],
|
||||||
},
|
"NoAccelerometerMessage": [
|
||||||
"characters": {
|
"Geen accelerometer",
|
||||||
"SettingRightChar": "R",
|
"gedetecteerd!"
|
||||||
"SettingLeftChar": "L",
|
],
|
||||||
"SettingAutoChar": "A",
|
"NoPowerDeliveryMessage": [
|
||||||
"SettingOffChar": "O",
|
"Geen USB-PD IC ",
|
||||||
"SettingSlowChar": "S",
|
"gedetecteerd!"
|
||||||
"SettingMediumChar": "M",
|
],
|
||||||
"SettingFastChar": "F",
|
"LockingKeysString": "GEBLOKKEERD",
|
||||||
"SettingStartNoneChar": "F",
|
"UnlockingKeysString": "GEDEBLOKKEERD",
|
||||||
"SettingStartSolderingChar": "T",
|
"WarningKeysLockedString": "!GEBLOKKEERD!",
|
||||||
"SettingStartSleepChar": "S",
|
"WarningThermalRunaway": [
|
||||||
"SettingStartSleepOffChar": "K",
|
"Verwarming",
|
||||||
"SettingSensitivityOff": "O",
|
"Oncontroleerbaar"
|
||||||
"SettingSensitivityLow": "L",
|
]
|
||||||
"SettingSensitivityMedium": "M",
|
},
|
||||||
"SettingSensitivityHigh": "H",
|
"characters": {
|
||||||
"SettingLockDisableChar": "U",
|
"SettingRightChar": "R",
|
||||||
"SettingLockBoostChar": "B",
|
"SettingLeftChar": "L",
|
||||||
"SettingLockFullChar": "V"
|
"SettingAutoChar": "A",
|
||||||
},
|
"SettingOffChar": "U",
|
||||||
"menuGroups": {
|
"SettingSlowChar": "L",
|
||||||
"PowerMenu": {
|
"SettingMediumChar": "G",
|
||||||
"text2": ["Power", "settings"],
|
"SettingFastChar": "S",
|
||||||
"desc": "Power settings"
|
"SettingStartNoneChar": "U",
|
||||||
},
|
"SettingStartSolderingChar": "G",
|
||||||
"SolderingMenu": {
|
"SettingStartSleepChar": "S",
|
||||||
"text2": ["Soldeer", "Instellingen"],
|
"SettingStartSleepOffChar": "B",
|
||||||
"desc": "Soldeer instellingen"
|
"SettingSensitivityOff": "U",
|
||||||
},
|
"SettingSensitivityLow": "L",
|
||||||
"PowerSavingMenu": {
|
"SettingSensitivityMedium": "G",
|
||||||
"text2": ["Slaap", "Modes"],
|
"SettingSensitivityHigh": "H",
|
||||||
"desc": "Stroom besparings instellingen"
|
"SettingLockDisableChar": "U",
|
||||||
},
|
"SettingLockBoostChar": "B",
|
||||||
"UIMenu": {
|
"SettingLockFullChar": "V"
|
||||||
"text2": ["Gebruikers-", "interface"],
|
},
|
||||||
"desc": "Gebruikers-interface instellingen"
|
"menuGroups": {
|
||||||
},
|
"PowerMenu": {
|
||||||
"AdvancedMenu": {
|
"text2": [
|
||||||
"text2": ["Geavanceerde", "Instellingen"],
|
"Voeding",
|
||||||
"desc": "Geavanceerde Instellingen"
|
"instellingen"
|
||||||
}
|
],
|
||||||
},
|
"desc": "Voeding instellingen"
|
||||||
"menuOptions": {
|
},
|
||||||
"DCInCutoff": {
|
"SolderingMenu": {
|
||||||
"text2": ["Spannings-", "bron"],
|
"text2": [
|
||||||
"desc": "Spanningsbron. Stelt drempelspanning in. (DC 10V) (S 3.3V per cel)"
|
"Soldeer",
|
||||||
},
|
"instellingen"
|
||||||
"SleepTemperature": {
|
],
|
||||||
"text2": ["Slaap", "temp"],
|
"desc": "Soldeer instellingen"
|
||||||
"desc": "Temperatuur in slaapstand"
|
},
|
||||||
},
|
"PowerSavingMenu": {
|
||||||
"SleepTimeout": {
|
"text2": [
|
||||||
"text2": ["Slaap", "time-out"],
|
"Slaap",
|
||||||
"desc": "Slaap time-out (Minuten | Seconden)"
|
"Modes"
|
||||||
},
|
],
|
||||||
"ShutdownTimeout": {
|
"desc": "Stroom besparings instellingen"
|
||||||
"text2": ["Uitschakel", "time-out"],
|
},
|
||||||
"desc": "Automatisch afsluiten time-out (Minuten)"
|
"UIMenu": {
|
||||||
},
|
"text2": [
|
||||||
"MotionSensitivity": {
|
"Weergave",
|
||||||
"text2": ["Bewegings-", "gevoeligheid"],
|
"instellingen"
|
||||||
"desc": "Bewegingsgevoeligheid (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
],
|
||||||
},
|
"desc": "Weergave instellingen"
|
||||||
"TemperatureUnit": {
|
},
|
||||||
"text2": ["Temperatuur", "eenheid"],
|
"AdvancedMenu": {
|
||||||
"desc": "Temperatuureenheid (C=Celsius | F=Fahrenheit)"
|
"text2": [
|
||||||
},
|
"Geavanceerde",
|
||||||
"AdvancedIdle": {
|
"instellingen"
|
||||||
"text2": ["Gedetailleerd", "startscherm"],
|
],
|
||||||
"desc": "Gedetailleerde informatie weergeven in een kleiner lettertype op het startscherm."
|
"desc": "Geavanceerde instellingen"
|
||||||
},
|
}
|
||||||
"DisplayRotation": {
|
},
|
||||||
"text2": ["Scherm-", "oriëntatie"],
|
"menuOptions": {
|
||||||
"desc": "Schermoriëntatie (R=Rechtshandig | L=Linkshandig | A=Automatisch)"
|
"DCInCutoff": {
|
||||||
},
|
"text2": [
|
||||||
"BoostTemperature": {
|
"Spannings-",
|
||||||
"text2": ["Boost", "temp"],
|
"bron"
|
||||||
"desc": "Temperatuur in boostmode"
|
],
|
||||||
},
|
"desc": "Spanningsbron. Stelt drempelspanning in. (DC 10V) (S 3.3V per cel)"
|
||||||
"AutoStart": {
|
},
|
||||||
"text2": ["Auto", "start"],
|
"SleepTemperature": {
|
||||||
"desc": "Breng de soldeerbout direct op temperatuur bij het opstarten. (F=Uit | T=Soldeertemperatuur | S=Slaapstand-temperatuur | K=Slaapstand kamertemperatuur)"
|
"text2": [
|
||||||
},
|
"Slaap",
|
||||||
"CooldownBlink": {
|
"temp"
|
||||||
"text2": ["Afkoel", "flikker"],
|
],
|
||||||
"desc": "Temperatuur laten flikkeren in het hoofdmenu als de soldeerpunt aan het afkoelen is."
|
"desc": "Punt temperatuur in slaapstand"
|
||||||
},
|
},
|
||||||
"TemperatureCalibration": {
|
"SleepTimeout": {
|
||||||
"text2": ["Calibreer", "temperatuur?"],
|
"text2": [
|
||||||
"desc": "Temperatuursafwijking van de soldeerpunt calibreren."
|
"Slaap",
|
||||||
},
|
"time-out"
|
||||||
"SettingsReset": {
|
],
|
||||||
"text2": ["Instellingen", "resetten?"],
|
"desc": "Tijd voordat slaapmodus wordt geactiveerd (S=seconden | M=minuten)"
|
||||||
"desc": "Alle instellingen terugzetten."
|
},
|
||||||
},
|
"ShutdownTimeout": {
|
||||||
"VoltageCalibration": {
|
"text2": [
|
||||||
"text2": ["Calibreer", "input-voltage?"],
|
"Uitschakel",
|
||||||
"desc": "VIN Calibreren. (druk lang om te sluiten)."
|
"time-out"
|
||||||
},
|
],
|
||||||
"AdvancedSoldering": {
|
"desc": "Tijd voordat soldeerbout automatisch uitschakelt (M=minuten)"
|
||||||
"text2": ["Gedetailleerd", "soldeerscherm"],
|
},
|
||||||
"desc": "Gedetailleerde informatie weergeven in een kleiner lettertype op het soldeerscherm."
|
"MotionSensitivity": {
|
||||||
},
|
"text2": [
|
||||||
"ScrollingSpeed": {
|
"Bewegings-",
|
||||||
"text2": ["Scroll", "snelheid"],
|
"gevoeligheid"
|
||||||
"desc": "Snelheid waarmee de tekst scrolt."
|
],
|
||||||
},
|
"desc": "Bewegingsgevoeligheid (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
||||||
"QCMaxVoltage": {
|
},
|
||||||
"text2": ["Power", "Wattage"],
|
"TemperatureUnit": {
|
||||||
"desc": "Wattage van de gebruikte voeding"
|
"text2": [
|
||||||
},
|
"Temperatuur",
|
||||||
"PDNegTimeout": {
|
"eenheid"
|
||||||
"text2": ["PD", "timeout"],
|
],
|
||||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
"desc": "Temperatuureenheid (C=Celsius | F=Fahrenheit)"
|
||||||
},
|
},
|
||||||
"PowerLimit": {
|
"AdvancedIdle": {
|
||||||
"text2": ["Vermogen", "limiet"],
|
"text2": [
|
||||||
"desc": "Maximaal vermogen (Watts)"
|
"Gedetailleerd",
|
||||||
},
|
"startscherm"
|
||||||
"ReverseButtonTempChange": {
|
],
|
||||||
"text2": ["Draai", "+ - knoppen om"],
|
"desc": "Gedetailleerde informatie weergeven in een kleine letters op het startscherm."
|
||||||
"desc": "Keer de +- knoppen om de termperatuur van de punt te regelen om."
|
},
|
||||||
},
|
"DisplayRotation": {
|
||||||
"TempChangeShortStep": {
|
"text2": [
|
||||||
"text2": ["Temp veranderen", "kort"],
|
"Scherm-",
|
||||||
"desc": "Temperatuur verandering bij kort drukken"
|
"oriëntatie"
|
||||||
},
|
],
|
||||||
"TempChangeLongStep": {
|
"desc": "Schermoriëntatie (R=Rechtshandig | L=Linkshandig | A=Automatisch)"
|
||||||
"text2": ["Temp veranderen", "lang"],
|
},
|
||||||
"desc": "Temperatuur verandering bij lang drukken"
|
"BoostTemperature": {
|
||||||
},
|
"text2": [
|
||||||
"PowerPulsePower": {
|
"Boost",
|
||||||
"text2": ["Vermogen", "Puls W"],
|
"temp"
|
||||||
"desc": "Vermogen van puls om soldeerbout aan te houden"
|
],
|
||||||
},
|
"desc": "Punt temperatuur in boostmode"
|
||||||
"HallEffSensitivity": {
|
},
|
||||||
"text2": ["Hall sensor", "sensitivity"],
|
"AutoStart": {
|
||||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
"text2": [
|
||||||
},
|
"Opstart",
|
||||||
"LockingMode": {
|
"gedrag"
|
||||||
"text2": ["Blokkeer", "knoppen"],
|
],
|
||||||
"desc": "Tijdens solderen lang op beide knoppen drukken, blokkeert ze. (U=Uit | B=Alleen boost | V=Volledig blokkeren)"
|
"desc": "Gedrag bij opstarten (U=Uit | G=Gebruiks-temperatuur | S=Slaapstand-temperatuur tot beweging | B=Uit tot beweging)"
|
||||||
},
|
},
|
||||||
"MinVolCell": {
|
"CooldownBlink": {
|
||||||
"text2": ["Minimum", "voltage"],
|
"text2": [
|
||||||
"desc": "Minimum allowed voltage per cell (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)"
|
"Afkoel",
|
||||||
},
|
"flitsen"
|
||||||
"AnimLoop": {
|
],
|
||||||
"text2": ["Anim.", "loop"],
|
"desc": "Temperatuur laten flitsen in het hoofdmenu zo lang de punt nog warm is"
|
||||||
"desc": "Loop icon animations in main menu"
|
},
|
||||||
},
|
"TemperatureCalibration": {
|
||||||
"AnimSpeed": {
|
"text2": [
|
||||||
"text2": ["Anim.", "speed"],
|
"Kalibreer",
|
||||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | F=fast)"
|
"temperatuur?"
|
||||||
},
|
],
|
||||||
"PowerPulseWait": {
|
"desc": "Start punt temperatuur-kalibratie"
|
||||||
"text2": ["Power pulse", "delay"],
|
},
|
||||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
"SettingsReset": {
|
||||||
},
|
"text2": [
|
||||||
"PowerPulseDuration": {
|
"Instellingen",
|
||||||
"text2": ["Power pulse", "duration"],
|
"resetten?"
|
||||||
"desc": "Keep-awake-pulse duration (x 250ms)"
|
],
|
||||||
},
|
"desc": "Alle instellingen terugzetten naar fabrieksinstellingen"
|
||||||
"LanguageSwitch": {
|
},
|
||||||
"text2": ["Spraak :", " NL Nederlands"],
|
"VoltageCalibration": {
|
||||||
"desc": ""
|
"text2": [
|
||||||
},
|
"Kalibreer",
|
||||||
"Brightness": {
|
"input-voltage?"
|
||||||
"text2": ["Screen", "brightness"],
|
],
|
||||||
"desc": "Adjust the brightness of the OLED screen"
|
"desc": "Start VIN Kalibratie (druk lang om te sluiten)"
|
||||||
},
|
},
|
||||||
"ColourInversion": {
|
"AdvancedSoldering": {
|
||||||
"text2": ["Invert", "screen"],
|
"text2": [
|
||||||
"desc": "Invert the colours of the OLED screen"
|
"Gedetailleerd",
|
||||||
},
|
"soldeerscherm"
|
||||||
"LOGOTime": {
|
],
|
||||||
"text2": ["Boot logo", "duration"],
|
"desc": "Gedetailleerde informatie weergeven in een kleiner lettertype op het soldeerscherm"
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
},
|
||||||
}
|
"ScrollingSpeed": {
|
||||||
}
|
"text2": [
|
||||||
}
|
"Scroll",
|
||||||
|
"snelheid"
|
||||||
|
],
|
||||||
|
"desc": "Snelheid waarmee de tekst scrolt (S=Snel | L=Langzaam)"
|
||||||
|
},
|
||||||
|
"QCMaxVoltage": {
|
||||||
|
"text2": [
|
||||||
|
"QC",
|
||||||
|
"Voltage"
|
||||||
|
],
|
||||||
|
"desc": "Maximaal QC voltage dat gevraagd mag worden"
|
||||||
|
},
|
||||||
|
"PDNegTimeout": {
|
||||||
|
"text2": [
|
||||||
|
"PD",
|
||||||
|
"timeout"
|
||||||
|
],
|
||||||
|
"desc": "PD afstemmingsduur in stappen van 100ms (voor compatibiliteit met sommige QC laders)"
|
||||||
|
},
|
||||||
|
"PowerLimit": {
|
||||||
|
"text2": [
|
||||||
|
"Vermogen",
|
||||||
|
"limiet"
|
||||||
|
],
|
||||||
|
"desc": "Maximaal vermogen (W=Watt)"
|
||||||
|
},
|
||||||
|
"ReverseButtonTempChange": {
|
||||||
|
"text2": [
|
||||||
|
"Draai",
|
||||||
|
"+ - knoppen om"
|
||||||
|
],
|
||||||
|
"desc": "Keer de +- knoppen van de temperatuurregeling om"
|
||||||
|
},
|
||||||
|
"TempChangeShortStep": {
|
||||||
|
"text2": [
|
||||||
|
"Temp veranderen",
|
||||||
|
"kort"
|
||||||
|
],
|
||||||
|
"desc": "Temperatuur verandering bij kort drukken"
|
||||||
|
},
|
||||||
|
"TempChangeLongStep": {
|
||||||
|
"text2": [
|
||||||
|
"Temp veranderen",
|
||||||
|
"lang"
|
||||||
|
],
|
||||||
|
"desc": "Temperatuur verandering bij lang drukken"
|
||||||
|
},
|
||||||
|
"PowerPulsePower": {
|
||||||
|
"text2": [
|
||||||
|
"Stroom",
|
||||||
|
"Puls"
|
||||||
|
],
|
||||||
|
"desc": "Intensiteit van stroompuls om voeding aan te houden (watt)"
|
||||||
|
},
|
||||||
|
"HallEffSensitivity": {
|
||||||
|
"text2": [
|
||||||
|
"Hall sensor",
|
||||||
|
"gevoeligheid"
|
||||||
|
],
|
||||||
|
"desc": "Gevoeligheid van de Hall effect sensor om naar slaapmodus te gaan (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
||||||
|
},
|
||||||
|
"LockingMode": {
|
||||||
|
"text2": [
|
||||||
|
"Knopblokkering",
|
||||||
|
"inschakelen"
|
||||||
|
],
|
||||||
|
"desc": "Tijdens solderen lang op beide knoppen drukken blokkeert de knoppen (U=Uit | B=Alleen boost mode | V=Volledig blokkeren)"
|
||||||
|
},
|
||||||
|
"MinVolCell": {
|
||||||
|
"text2": [
|
||||||
|
"Minimum",
|
||||||
|
"voltage"
|
||||||
|
],
|
||||||
|
"desc": "Minimum toegestaan voltage per cell (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)"
|
||||||
|
},
|
||||||
|
"AnimLoop": {
|
||||||
|
"text2": [
|
||||||
|
"Animatie",
|
||||||
|
"herhaling"
|
||||||
|
],
|
||||||
|
"desc": "Herhaal icoon animaties in hoofdmenu"
|
||||||
|
},
|
||||||
|
"AnimSpeed": {
|
||||||
|
"text2": [
|
||||||
|
"Animatie",
|
||||||
|
"snelheid"
|
||||||
|
],
|
||||||
|
"desc": "Tempo van de icoon animaties in het hoofdmenu (U=uit | L=langzaam | G=gemiddeld | S=snel)"
|
||||||
|
},
|
||||||
|
"PowerPulseWait": {
|
||||||
|
"text2": [
|
||||||
|
"Stroompuls",
|
||||||
|
"interval"
|
||||||
|
],
|
||||||
|
"desc": "Tijdsduur tussen voeding wakker-blijf-pulsen (x 2.5s)"
|
||||||
|
},
|
||||||
|
"PowerPulseDuration": {
|
||||||
|
"text2": [
|
||||||
|
"Power pulse",
|
||||||
|
"duur"
|
||||||
|
],
|
||||||
|
"desc": "Duur van voeding-wakker-blijf-pulsen (x 250ms)"
|
||||||
|
},
|
||||||
|
"LanguageSwitch": {
|
||||||
|
"text2": [
|
||||||
|
"Taal:",
|
||||||
|
" NL Nederlands"
|
||||||
|
],
|
||||||
|
"desc": "Huidige firmware taal"
|
||||||
|
},
|
||||||
|
"Brightness": {
|
||||||
|
"text2": [
|
||||||
|
"Scherm",
|
||||||
|
"helderheid"
|
||||||
|
],
|
||||||
|
"desc": "Pas helderheid van het OLED scherm aan"
|
||||||
|
},
|
||||||
|
"ColourInversion": {
|
||||||
|
"text2": [
|
||||||
|
"Inverteer",
|
||||||
|
"scherm"
|
||||||
|
],
|
||||||
|
"desc": "Inverteer de kleuren van het OLED scherm"
|
||||||
|
},
|
||||||
|
"LOGOTime": {
|
||||||
|
"text2": [
|
||||||
|
"Opstart logo",
|
||||||
|
"duur"
|
||||||
|
],
|
||||||
|
"desc": "Stelt de weergaveduur van het opstartlogo in (s=seconden)"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -200,8 +200,8 @@
|
|||||||
"desc": "Odwrócenie kolorów wyświetlacza OLED"
|
"desc": "Odwrócenie kolorów wyświetlacza OLED"
|
||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Długość wyś.", "loga"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Ustawia czas wyświetlania loga podczas uruchamiania (s=sekund)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Expirare", "repaus"],
|
"text2": ["Expirare", "repaus"],
|
||||||
"desc": "Interval înainte de lansarea \"modului de repaus\" în (S=secunde | M=minute)"
|
"desc": "Interval înainte de lansarea \"modului de repaus\" în (s=secunde | m=minute)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Expirare", "oprire"],
|
"text2": ["Expirare", "oprire"],
|
||||||
"desc": "Interval înainte ca letconul să se oprească (M=minute)"
|
"desc": "Interval înainte ca letconul să se oprească (m=minute)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Sensibilitate", "la mişcare"],
|
"text2": ["Sensibilitate", "la mişcare"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -132,8 +132,8 @@
|
|||||||
"desc": "Скорость прокрутки текста (М=медленно | Б=быстро)"
|
"desc": "Скорость прокрутки текста (М=медленно | Б=быстро)"
|
||||||
},
|
},
|
||||||
"QCMaxVoltage": {
|
"QCMaxVoltage": {
|
||||||
"text2": ["Максимальный", "вольтаж для QC"],
|
"text2": ["Ограничение", "напряжения QC"],
|
||||||
"desc": "Максимальный поддерживаемый QC вольтаж используемого источника питания"
|
"desc": "Максимальное напряжение для согласования с QC источником питания"
|
||||||
},
|
},
|
||||||
"PDNegTimeout": {
|
"PDNegTimeout": {
|
||||||
"text2": ["PD", "тайм-аут"],
|
"text2": ["PD", "тайм-аут"],
|
||||||
@@ -196,12 +196,12 @@
|
|||||||
"desc": "Настройки контраста/яркости OLED экрана"
|
"desc": "Настройки контраста/яркости OLED экрана"
|
||||||
},
|
},
|
||||||
"ColourInversion": {
|
"ColourInversion": {
|
||||||
"text2": ["Инверт", "экрана"],
|
"text2": ["Инверсия", "экрана"],
|
||||||
"desc": "Инвертировать цвета на OLED экране"
|
"desc": "Инвертировать цвета на OLED экране"
|
||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Длительность", "показа логотипа"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Длительность отображения логотипа (в секундах)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Pokojový", "režim po"],
|
"text2": ["Pokojový", "režim po"],
|
||||||
"desc": "Pokojový režim po (S=sekundách | M=minútach)"
|
"desc": "Pokojový režim po (s=sekundách | m=minútach)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Vypnutie", "po"],
|
"text2": ["Vypnutie", "po"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Čas do", "spanja"],
|
"text2": ["Čas do", "spanja"],
|
||||||
"desc": "Čas pred spanjem (S=sekunde | M=minute)"
|
"desc": "Čas pred spanjem (s=sekunde | m=minute)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Čas do", "izklopa"],
|
"text2": ["Čas do", "izklopa"],
|
||||||
"desc": "Čas do izklopa (M=minute)"
|
"desc": "Čas do izklopa (m=minute)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Občutljivost", "premikanja"],
|
"text2": ["Občutljivost", "premikanja"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Време до", "спавања"],
|
"text2": ["Време до", "спавања"],
|
||||||
"desc": "Време мировања након кога лемилица спушта температуру. (M=минути | S=секунде)"
|
"desc": "Време мировања након кога лемилица спушта температуру. (m=минути | s=секунде)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Време до", "гашења"],
|
"text2": ["Време до", "гашења"],
|
||||||
"desc": "Време мировања након кога се лемилица гаси. (M=минути)"
|
"desc": "Време мировања након кога се лемилица гаси. (m=минути)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Осетљивост", "на покрет"],
|
"text2": ["Осетљивост", "на покрет"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Vreme do", "spavanja"],
|
"text2": ["Vreme do", "spavanja"],
|
||||||
"desc": "Vreme mirovanja nakon koga lemilica spušta temperaturu. (M=minuti | S=sekunde)"
|
"desc": "Vreme mirovanja nakon koga lemilica spušta temperaturu. (m=minuti | s=sekunde)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Vreme do", "gašenja"],
|
"text2": ["Vreme do", "gašenja"],
|
||||||
"desc": "Vreme mirovanja nakon koga se lemilica gasi. (M=minuti)"
|
"desc": "Vreme mirovanja nakon koga se lemilica gasi. (m=minuti)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Osetljivost", "na pokret"],
|
"text2": ["Osetljivost", "na pokret"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Vilo-", "timeout"],
|
"text2": ["Vilo-", "timeout"],
|
||||||
"desc": "Vilo-timeout (M=Minuter | S=Sekunder)"
|
"desc": "Vilo-timeout (m=Minuter | s=Sekunder)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Avstängn.", "timeout"],
|
"text2": ["Avstängn.", "timeout"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": ["Ngu", "sau"],
|
"text2": ["Ngu", "sau"],
|
||||||
"desc": "- thoi gian truoc khi \"Che đo ngu\" bat đau (S=giây | M=phút)"
|
"desc": "- thoi gian truoc khi \"Che đo ngu\" bat đau (s=giây | m=phút)"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": ["Tat", "sau"],
|
"text2": ["Tat", "sau"],
|
||||||
"desc": "- khoang thoi gian truoc khi tay hàn tat (M=phút)"
|
"desc": "- khoang thoi gian truoc khi tay hàn tat (m=phút)"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": ["Cam bien", "cu đong"],
|
"text2": ["Cam bien", "cu đong"],
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": "待機延時",
|
"text2": "待機延時",
|
||||||
"desc": "自動進入待機模式前嘅閒置等候時間 <S=秒 | M=分鐘>"
|
"desc": "自動進入待機模式前嘅閒置等候時間 <s=秒 | m=分鐘>"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": "自動熄機",
|
"text2": "自動熄機",
|
||||||
"desc": "自動熄機前嘅閒置等候時間 <M=分鐘>"
|
"desc": "自動熄機前嘅閒置等候時間 <m=分鐘>"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": "動作敏感度",
|
"text2": "動作敏感度",
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": "待机超时",
|
"text2": "待机超时",
|
||||||
"desc": "自动进入待机模式前的等候时间 <S=秒 | M=分钟>"
|
"desc": "自动进入待机模式前的等候时间 <s=秒 | m=分钟>"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": "自动关机",
|
"text2": "自动关机",
|
||||||
"desc": "自动关机前的等候时间 <M=分钟>"
|
"desc": "自动关机前的等候时间 <m=分钟>"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": "动作灵敏度",
|
"text2": "动作灵敏度",
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"SleepTimeout": {
|
"SleepTimeout": {
|
||||||
"text2": "待機延時",
|
"text2": "待機延時",
|
||||||
"desc": "自動進入待機模式前的閒置等候時間 <S=秒 | M=分鐘>"
|
"desc": "自動進入待機模式前的閒置等候時間 <s=秒 | m=分鐘>"
|
||||||
},
|
},
|
||||||
"ShutdownTimeout": {
|
"ShutdownTimeout": {
|
||||||
"text2": "自動關機",
|
"text2": "自動關機",
|
||||||
"desc": "自動關機前的閒置等候時間 <M=分鐘>"
|
"desc": "自動關機前的閒置等候時間 <m=分鐘>"
|
||||||
},
|
},
|
||||||
"MotionSensitivity": {
|
"MotionSensitivity": {
|
||||||
"text2": "動作敏感度",
|
"text2": "動作敏感度",
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
},
|
},
|
||||||
"LOGOTime": {
|
"LOGOTime": {
|
||||||
"text2": ["Boot logo", "duration"],
|
"text2": ["Boot logo", "duration"],
|
||||||
"desc": "Sets the duration for the boot logo (S=seconds)"
|
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,119 +6,87 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef BSP_MINIWARE_PINS_H_
|
#ifndef BSP_MINIWARE_PINS_H_
|
||||||
#define BSP_MINIWARE_PINS_H_
|
#define BSP_MINIWARE_PINS_H_
|
||||||
#include "configuration.h"
|
#include "configuration.h"
|
||||||
|
|
||||||
#ifdef MODEL_TS100
|
#ifdef MODEL_TS100
|
||||||
|
|
||||||
#define KEY_B_Pin GPIO_PIN_6
|
#define KEY_B_Pin GPIO_PIN_6
|
||||||
#define KEY_B_GPIO_Port GPIOA
|
#define KEY_B_GPIO_Port GPIOA
|
||||||
#define TMP36_INPUT_Pin GPIO_PIN_7
|
#define TMP36_INPUT_Pin GPIO_PIN_7
|
||||||
#define TMP36_INPUT_GPIO_Port GPIOA
|
#define TMP36_INPUT_GPIO_Port GPIOA
|
||||||
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_7
|
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_7
|
||||||
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_7
|
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_7
|
||||||
#define TIP_TEMP_Pin GPIO_PIN_0
|
#define TIP_TEMP_Pin GPIO_PIN_0
|
||||||
#define TIP_TEMP_GPIO_Port GPIOB
|
#define TIP_TEMP_GPIO_Port GPIOB
|
||||||
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_8
|
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_8
|
||||||
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_8
|
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_8
|
||||||
#define VIN_Pin GPIO_PIN_1
|
#define VIN_Pin GPIO_PIN_1
|
||||||
#define VIN_GPIO_Port GPIOB
|
#define VIN_GPIO_Port GPIOB
|
||||||
#define VIN_ADC1_CHANNEL ADC_CHANNEL_9
|
#define VIN_ADC1_CHANNEL ADC_CHANNEL_9
|
||||||
#define VIN_ADC2_CHANNEL ADC_CHANNEL_9
|
#define VIN_ADC2_CHANNEL ADC_CHANNEL_9
|
||||||
#define OLED_RESET_Pin GPIO_PIN_8
|
#define OLED_RESET_Pin GPIO_PIN_8
|
||||||
#define OLED_RESET_GPIO_Port GPIOA
|
#define OLED_RESET_GPIO_Port GPIOA
|
||||||
#define KEY_A_Pin GPIO_PIN_9
|
#define KEY_A_Pin GPIO_PIN_9
|
||||||
#define KEY_A_GPIO_Port GPIOA
|
#define KEY_A_GPIO_Port GPIOA
|
||||||
#define INT_Orientation_Pin GPIO_PIN_3
|
#define INT_Orientation_Pin GPIO_PIN_3
|
||||||
#define INT_Orientation_GPIO_Port GPIOB
|
#define INT_Orientation_GPIO_Port GPIOB
|
||||||
#define PWM_Out_Pin GPIO_PIN_4
|
#define PWM_Out_Pin GPIO_PIN_4
|
||||||
#define PWM_Out_GPIO_Port GPIOB
|
#define PWM_Out_GPIO_Port GPIOB
|
||||||
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
||||||
#define PWM_Out_CCR
|
#define PWM_Out_CCR
|
||||||
#define INT_Movement_Pin GPIO_PIN_5
|
#define INT_Movement_Pin GPIO_PIN_5
|
||||||
#define INT_Movement_GPIO_Port GPIOB
|
#define INT_Movement_GPIO_Port GPIOB
|
||||||
#define SCL_Pin GPIO_PIN_6
|
#define SCL_Pin GPIO_PIN_6
|
||||||
#define SCL_GPIO_Port GPIOB
|
#define SCL_GPIO_Port GPIOB
|
||||||
#define SDA_Pin GPIO_PIN_7
|
#define SDA_Pin GPIO_PIN_7
|
||||||
#define SDA_GPIO_Port GPIOB
|
#define SDA_GPIO_Port GPIOB
|
||||||
#endif
|
#endif
|
||||||
#ifdef MODEL_TS80
|
|
||||||
// TS80 pin map
|
|
||||||
#define KEY_B_Pin GPIO_PIN_0
|
|
||||||
#define KEY_B_GPIO_Port GPIOB
|
|
||||||
#define TMP36_INPUT_Pin GPIO_PIN_4
|
|
||||||
#define TMP36_INPUT_GPIO_Port GPIOA
|
|
||||||
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_4
|
|
||||||
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_4
|
|
||||||
#define TIP_TEMP_Pin GPIO_PIN_3
|
|
||||||
#define TIP_TEMP_GPIO_Port GPIOA
|
|
||||||
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_3
|
|
||||||
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_3
|
|
||||||
|
|
||||||
#define VIN_Pin GPIO_PIN_2
|
#if defined(MODEL_TS80) + defined(MODEL_TS80P) > 0
|
||||||
#define VIN_GPIO_Port GPIOA
|
// TS80 & TS80P pin map
|
||||||
#define VIN_ADC1_CHANNEL ADC_CHANNEL_2
|
#define KEY_B_Pin GPIO_PIN_0
|
||||||
#define VIN_ADC2_CHANNEL ADC_CHANNEL_2
|
#define KEY_B_GPIO_Port GPIOB
|
||||||
#define OLED_RESET_Pin GPIO_PIN_15
|
#define TMP36_INPUT_Pin GPIO_PIN_4
|
||||||
#define OLED_RESET_GPIO_Port GPIOA
|
#define TMP36_INPUT_GPIO_Port GPIOA
|
||||||
#define KEY_A_Pin GPIO_PIN_1
|
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_4
|
||||||
#define KEY_A_GPIO_Port GPIOB
|
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_4
|
||||||
#define INT_Orientation_Pin GPIO_PIN_4
|
#define TIP_TEMP_Pin GPIO_PIN_3
|
||||||
#define INT_Orientation_GPIO_Port GPIOB
|
#define TIP_TEMP_GPIO_Port GPIOA
|
||||||
#define PWM_Out_Pin GPIO_PIN_6
|
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_3
|
||||||
#define PWM_Out_GPIO_Port GPIOA
|
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_3
|
||||||
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
|
||||||
#define INT_Movement_Pin GPIO_PIN_5
|
|
||||||
#define INT_Movement_GPIO_Port GPIOB
|
|
||||||
#define SCL_Pin GPIO_PIN_6
|
|
||||||
#define SCL_GPIO_Port GPIOB
|
|
||||||
#define SDA_Pin GPIO_PIN_7
|
|
||||||
#define SDA_GPIO_Port GPIOB
|
|
||||||
#define SCL2_Pin GPIO_PIN_5
|
|
||||||
#define SCL2_GPIO_Port GPIOA
|
|
||||||
#define SDA2_Pin GPIO_PIN_1
|
|
||||||
#define SDA2_GPIO_Port GPIOA
|
|
||||||
|
|
||||||
#endif
|
#define VIN_Pin GPIO_PIN_2
|
||||||
#ifdef MODEL_TS80P
|
#define VIN_GPIO_Port GPIOA
|
||||||
// TS80P pin map
|
#define VIN_ADC1_CHANNEL ADC_CHANNEL_2
|
||||||
#define KEY_B_Pin GPIO_PIN_0
|
#define VIN_ADC2_CHANNEL ADC_CHANNEL_2
|
||||||
#define KEY_B_GPIO_Port GPIOB
|
#define OLED_RESET_Pin GPIO_PIN_15
|
||||||
#define TMP36_INPUT_Pin GPIO_PIN_4
|
#define OLED_RESET_GPIO_Port GPIOA
|
||||||
#define TMP36_INPUT_GPIO_Port GPIOA
|
#define KEY_A_Pin GPIO_PIN_1
|
||||||
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_4
|
#define KEY_A_GPIO_Port GPIOB
|
||||||
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_4
|
#define INT_Orientation_Pin GPIO_PIN_4
|
||||||
#define TIP_TEMP_Pin GPIO_PIN_3
|
#define INT_Orientation_GPIO_Port GPIOB
|
||||||
#define TIP_TEMP_GPIO_Port GPIOA
|
#define PWM_Out_Pin GPIO_PIN_6
|
||||||
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_3
|
#define PWM_Out_GPIO_Port GPIOA
|
||||||
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_3
|
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
||||||
|
#define INT_Movement_Pin GPIO_PIN_5
|
||||||
|
#define INT_Movement_GPIO_Port GPIOB
|
||||||
|
#define SCL_Pin GPIO_PIN_6
|
||||||
|
#define SCL_GPIO_Port GPIOB
|
||||||
|
#define SDA_Pin GPIO_PIN_7
|
||||||
|
#define SDA_GPIO_Port GPIOB
|
||||||
|
#define SCL2_Pin GPIO_PIN_5
|
||||||
|
#define SCL2_GPIO_Port GPIOA
|
||||||
|
#define SDA2_Pin GPIO_PIN_1
|
||||||
|
#define SDA2_GPIO_Port GPIOA
|
||||||
|
|
||||||
#define VIN_Pin GPIO_PIN_2
|
#endif
|
||||||
#define VIN_GPIO_Port GPIOA
|
|
||||||
#define VIN_ADC1_CHANNEL ADC_CHANNEL_2
|
|
||||||
#define VIN_ADC2_CHANNEL ADC_CHANNEL_2
|
|
||||||
#define OLED_RESET_Pin GPIO_PIN_15
|
|
||||||
#define OLED_RESET_GPIO_Port GPIOA
|
|
||||||
#define KEY_A_Pin GPIO_PIN_1
|
|
||||||
#define KEY_A_GPIO_Port GPIOB
|
|
||||||
#define INT_Orientation_Pin GPIO_PIN_4
|
|
||||||
#define INT_Orientation_GPIO_Port GPIOB
|
|
||||||
#define PWM_Out_Pin GPIO_PIN_6
|
|
||||||
#define PWM_Out_GPIO_Port GPIOA
|
|
||||||
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
|
||||||
#define INT_Movement_Pin GPIO_PIN_5
|
|
||||||
#define INT_Movement_GPIO_Port GPIOB
|
|
||||||
#define SCL_Pin GPIO_PIN_6
|
|
||||||
#define SCL_GPIO_Port GPIOB
|
|
||||||
#define SDA_Pin GPIO_PIN_7
|
|
||||||
#define SDA_GPIO_Port GPIOB
|
|
||||||
#define SCL2_Pin GPIO_PIN_5
|
|
||||||
#define SCL2_GPIO_Port GPIOA
|
|
||||||
#define SDA2_Pin GPIO_PIN_1
|
|
||||||
#define SDA2_GPIO_Port GPIOA
|
|
||||||
#define INT_PD_Pin GPIO_PIN_9
|
|
||||||
#define INT_PD_GPIO_Port GPIOA
|
|
||||||
|
|
||||||
#endif
|
#ifdef MODEL_TS80P
|
||||||
|
// TS80P pin map
|
||||||
|
#define INT_PD_Pin GPIO_PIN_9
|
||||||
|
#define INT_PD_GPIO_Port GPIOA
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* BSP_MINIWARE_PINS_H_ */
|
#endif /* BSP_MINIWARE_PINS_H_ */
|
||||||
|
|||||||
@@ -22,11 +22,7 @@ void power_check() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool getIsPoweredByDCIN() {
|
bool getIsPoweredByDCIN() {
|
||||||
#ifdef MODEL_TS80
|
#if defined(MODEL_TS80) + defined(MODEL_TS80P) > 0
|
||||||
return false;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MODEL_TS80P
|
|
||||||
return false;
|
return false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -1,236 +1,208 @@
|
|||||||
#ifndef CONFIGURATION_H_
|
#ifndef CONFIGURATION_H_
|
||||||
#define CONFIGURATION_H_
|
#define CONFIGURATION_H_
|
||||||
#include "Settings.h"
|
#include "Settings.h"
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
/**
|
/**
|
||||||
* Configuration.h
|
* Configuration.h
|
||||||
* Define here your default pre settings for TS80(P) or TS100
|
* Define here your default pre settings for TS80(P) or TS100
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
//============================= Default Settings ============================
|
//============================= Default Settings ============================
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
/**
|
/**
|
||||||
* Default soldering temp is 320.0 C
|
* Default soldering temp is 320.0 C
|
||||||
* Temperature the iron sleeps at - default 150.0 C
|
* Temperature the iron sleeps at - default 150.0 C
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define SLEEP_TEMP 150 // Default sleep temperature
|
#define SLEEP_TEMP 150 // Default sleep temperature
|
||||||
#define BOOST_TEMP 420 // Default boost temp.
|
#define BOOST_TEMP 420 // Default boost temp.
|
||||||
#define BOOST_MODE_ENABLED 1 // 0: Disable 1: Enable
|
#define BOOST_MODE_ENABLED 1 // 0: Disable 1: Enable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Blink the temperature on the cooling screen when its > 50C
|
* Blink the temperature on the cooling screen when its > 50C
|
||||||
*/
|
*/
|
||||||
#define COOLING_TEMP_BLINK 0 // 0: Disable 1: Enable
|
#define COOLING_TEMP_BLINK 0 // 0: Disable 1: Enable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* How many seconds/minutes we wait until going to sleep/shutdown.
|
* How many seconds/minutes we wait until going to sleep/shutdown.
|
||||||
* Values -> SLEEP_TIME * 10; i.e. 5*10 = 50 Seconds!
|
* Values -> SLEEP_TIME * 10; i.e. 5*10 = 50 Seconds!
|
||||||
*/
|
*/
|
||||||
#define SLEEP_TIME 5 // x10 Seconds
|
#define SLEEP_TIME 5 // x10 Seconds
|
||||||
#define SHUTDOWN_TIME 10 // Minutes
|
#define SHUTDOWN_TIME 10 // Minutes
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Auto start off for safety.
|
* Auto start off for safety.
|
||||||
* Pissible values are:
|
* Pissible values are:
|
||||||
* 0 - none
|
* 0 - none
|
||||||
* 1 - Soldering Temperature
|
* 1 - Soldering Temperature
|
||||||
* 2 - Sleep Temperature
|
* 2 - Sleep Temperature
|
||||||
* 3 - Sleep Off Temperature
|
* 3 - Sleep Off Temperature
|
||||||
*/
|
*/
|
||||||
#define AUTO_START_MODE 0 // Default to none
|
#define AUTO_START_MODE 0 // Default to none
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Locking Mode
|
* Locking Mode
|
||||||
* When in soldering mode a long press on both keys toggle the lock of the buttons
|
* When in soldering mode a long press on both keys toggle the lock of the buttons
|
||||||
* Possible values are:
|
* Possible values are:
|
||||||
* 0 - Desactivated
|
* 0 - Desactivated
|
||||||
* 1 - Lock except boost
|
* 1 - Lock except boost
|
||||||
* 2 - Full lock
|
* 2 - Full lock
|
||||||
*/
|
*/
|
||||||
#define LOCKING_MODE 0 // Default to desactivated for safety
|
#define LOCKING_MODE 0 // Default to desactivated for safety
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* OLED Orientation
|
* OLED Orientation
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define ORIENTATION_MODE 2 // 0: Right 1:Left 2:Automatic - Default Automatic
|
#define ORIENTATION_MODE 2 // 0: Right 1:Left 2:Automatic - Default Automatic
|
||||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Temp change settings
|
* Temp change settings
|
||||||
*/
|
*/
|
||||||
#define TEMP_CHANGE_SHORT_STEP 1 // Default temp change short step +1
|
#define TEMP_CHANGE_SHORT_STEP 1 // Default temp change short step +1
|
||||||
#define TEMP_CHANGE_LONG_STEP 10 // Default temp change long step +10
|
#define TEMP_CHANGE_LONG_STEP 10 // Default temp change long step +10
|
||||||
#define TEMP_CHANGE_SHORT_STEP_MAX 50 // Temp change short step MAX value
|
#define TEMP_CHANGE_SHORT_STEP_MAX 50 // Temp change short step MAX value
|
||||||
#define TEMP_CHANGE_LONG_STEP_MAX 90 // Temp change long step MAX value
|
#define TEMP_CHANGE_LONG_STEP_MAX 90 // Temp change long step MAX value
|
||||||
|
|
||||||
/* Power pulse for keeping power banks awake*/
|
/* Power pulse for keeping power banks awake*/
|
||||||
#define POWER_PULSE_INCREMENT 1
|
#define POWER_PULSE_INCREMENT 1
|
||||||
#define POWER_PULSE_MAX 100 // x10 max watts
|
#define POWER_PULSE_MAX 100 // x10 max watts
|
||||||
#define POWER_PULSE_WAIT_MAX 9 // 9*2.5s = 22.5 seconds
|
#define POWER_PULSE_WAIT_MAX 9 // 9*2.5s = 22.5 seconds
|
||||||
#define POWER_PULSE_DURATION_MAX 9 // 9*250ms = 2.25 seconds
|
#define POWER_PULSE_DURATION_MAX 9 // 9*250ms = 2.25 seconds
|
||||||
|
|
||||||
#ifdef MODEL_TS100
|
#ifdef MODEL_TS100
|
||||||
#define POWER_PULSE_DEFAULT 0
|
#define POWER_PULSE_DEFAULT 0
|
||||||
#else
|
#else
|
||||||
#define POWER_PULSE_DEFAULT 5
|
#define POWER_PULSE_DEFAULT 5
|
||||||
#endif
|
#endif
|
||||||
#define POWER_PULSE_WAIT_DEFAULT 4 // Default rate of the power pulse: 4*2500 = 10000 ms = 10 s
|
#define POWER_PULSE_WAIT_DEFAULT 4 // Default rate of the power pulse: 4*2500 = 10000 ms = 10 s
|
||||||
#define POWER_PULSE_DURATION_DEFAULT 1 // Default duration of the power pulse: 1*250 = 250 ms
|
#define POWER_PULSE_DURATION_DEFAULT 1 // Default duration of the power pulse: 1*250 = 250 ms
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* OLED Orientation Sensitivity on Automatic mode!
|
* OLED Orientation Sensitivity on Automatic mode!
|
||||||
* Motion Sensitivity <0=Off 1=Least Sensitive 9=Most Sensitive>
|
* Motion Sensitivity <0=Off 1=Least Sensitive 9=Most Sensitive>
|
||||||
*/
|
*/
|
||||||
#define SENSITIVITY 7 // Default 7
|
#define SENSITIVITY 7 // Default 7
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Detailed soldering screen
|
* Detailed soldering screen
|
||||||
* Detailed idle screen (off for first time users)
|
* Detailed idle screen (off for first time users)
|
||||||
*/
|
*/
|
||||||
#define DETAILED_SOLDERING 0 // 0: Disable 1: Enable - Default 0
|
#define DETAILED_SOLDERING 0 // 0: Disable 1: Enable - Default 0
|
||||||
#define DETAILED_IDLE 0 // 0: Disable 1: Enable - Default 0
|
#define DETAILED_IDLE 0 // 0: Disable 1: Enable - Default 0
|
||||||
|
|
||||||
#define THERMAL_RUNAWAY_TIME_SEC 20
|
#define THERMAL_RUNAWAY_TIME_SEC 20
|
||||||
#define THERMAL_RUNAWAY_TEMP_C 10
|
#define THERMAL_RUNAWAY_TEMP_C 10
|
||||||
|
|
||||||
#define CUT_OUT_SETTING 0 // default to no cut-off voltage
|
#define CUT_OUT_SETTING 0 // default to no cut-off voltage
|
||||||
#define RECOM_VOL_CELL 33 // Minimum voltage per cell (Recommended 3.3V (33))
|
#define RECOM_VOL_CELL 33 // Minimum voltage per cell (Recommended 3.3V (33))
|
||||||
#define TEMPERATURE_INF 0 // default to 0
|
#define TEMPERATURE_INF 0 // default to 0
|
||||||
#define DESCRIPTION_SCROLL_SPEED 0 // 0: Slow 1: Fast - default to slow
|
#define DESCRIPTION_SCROLL_SPEED 0 // 0: Slow 1: Fast - default to slow
|
||||||
#define ANIMATION_LOOP 1 // 0: off 1: on
|
#define ANIMATION_LOOP 1 // 0: off 1: on
|
||||||
#define ANIMATION_SPEED settingOffSpeed_t::MEDIUM
|
#define ANIMATION_SPEED settingOffSpeed_t::MEDIUM
|
||||||
|
|
||||||
#define OP_AMP_Rf_TS100 750 * 1000 // 750 Kilo-ohms -> From schematic, R1
|
#define OP_AMP_Rf_TS100 750 * 1000 // 750 Kilo-ohms -> From schematic, R1
|
||||||
#define OP_AMP_Rin_TS100 2370 // 2.37 Kilo-ohms -> From schematic, R2
|
#define OP_AMP_Rin_TS100 2370 // 2.37 Kilo-ohms -> From schematic, R2
|
||||||
|
|
||||||
#define OP_AMP_GAIN_STAGE_TS100 (1 + (OP_AMP_Rf_TS100 / OP_AMP_Rin_TS100))
|
#define OP_AMP_GAIN_STAGE_TS100 (1 + (OP_AMP_Rf_TS100 / OP_AMP_Rin_TS100))
|
||||||
|
|
||||||
#define OP_AMP_Rf_TS80 180 * 1000 // 180 Kilo-ohms -> From schematic, R6
|
#define OP_AMP_Rf_TS80 180 * 1000 // 180 Kilo-ohms -> From schematic, R6
|
||||||
#define OP_AMP_Rin_TS80 2000 // 2.0 Kilo-ohms -> From schematic, R3
|
#define OP_AMP_Rin_TS80 2000 // 2.0 Kilo-ohms -> From schematic, R3
|
||||||
|
|
||||||
#define OP_AMP_GAIN_STAGE_TS80 (1 + (OP_AMP_Rf_TS80 / OP_AMP_Rin_TS80))
|
#define OP_AMP_GAIN_STAGE_TS80 (1 + (OP_AMP_Rf_TS80 / OP_AMP_Rin_TS80))
|
||||||
|
|
||||||
// Deriving the Voltage div:
|
// Deriving the Voltage div:
|
||||||
// Vin_max = (3.3*(r1+r2))/(r2)
|
// Vin_max = (3.3*(r1+r2))/(r2)
|
||||||
// vdiv = (32768*4)/(vin_max*10)
|
// vdiv = (32768*4)/(vin_max*10)
|
||||||
|
|
||||||
#if defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) > 1
|
#if defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) > 1
|
||||||
#error "Multiple models defined!"
|
#error "Multiple models defined!"
|
||||||
#elif defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) == 0
|
#elif defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) == 0
|
||||||
#error "No model defined!"
|
#error "No model defined!"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Miniware is swapping IMU's around a bit now, so we turn them all on
|
||||||
|
|
||||||
|
#define ACCEL_MMA
|
||||||
|
#define ACCEL_LIS
|
||||||
|
#define ACCEL_SC7
|
||||||
|
#define ACCEL_MSA
|
||||||
|
#define ACCEL_BMA
|
||||||
|
|
||||||
|
#define MIN_CALIBRATION_OFFSET 100 // Min value for calibration
|
||||||
|
#define SOLDERING_TEMP 320 // Default soldering temp is 320.0 °C
|
||||||
|
#define PID_TIM_HZ (8) // Tick rate of the PID loop
|
||||||
|
#define MAX_TEMP_C 450 // Max soldering temp selectable °C
|
||||||
|
#define MAX_TEMP_F 850 // Max soldering temp selectable °F
|
||||||
|
#define MIN_TEMP_C 10 // Min soldering temp selectable °C
|
||||||
|
#define MIN_TEMP_F 60 // Min soldering temp selectable °F
|
||||||
|
#define MIN_BOOST_TEMP_C 250 // The min settable temp for boost mode °C
|
||||||
|
#define MIN_BOOST_TEMP_F 480 // The min settable temp for boost mode °F
|
||||||
|
|
||||||
|
#ifdef MODEL_TS100
|
||||||
|
#define VOLTAGE_DIV 467 // 467 - Default divider from schematic
|
||||||
|
#define CALIBRATION_OFFSET 900 // 900 - Default adc offset in uV
|
||||||
|
#define PID_POWER_LIMIT 70 // Sets the max pwm power limit
|
||||||
|
#define POWER_LIMIT 0 // 0 watts default limit
|
||||||
|
#define MAX_POWER_LIMIT 70
|
||||||
|
#define POWER_LIMIT_STEPS 5
|
||||||
|
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_TS100
|
||||||
|
#define TEMP_uV_LOOKUP_HAKKO
|
||||||
|
#define USB_PD_VMAX 20 // Maximum voltage for PD to negotiate
|
||||||
|
|
||||||
|
#define HARDWARE_MAX_WATTAGE_X10 750
|
||||||
|
#define TIP_THERMAL_MASS 65 // X10 watts to raise 1 deg C in 1 second
|
||||||
|
#define TIP_RESISTANCE 75 // x10 ohms, 7.5 typical for ts100 tips
|
||||||
|
|
||||||
|
#define POW_DC
|
||||||
|
#define POW_PD 0
|
||||||
|
#define TEMP_TMP36
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MODEL_TS80) + defined(MODEL_TS80P) > 0
|
||||||
|
#define MAX_POWER_LIMIT 40
|
||||||
|
#define POWER_LIMIT_STEPS 2
|
||||||
|
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_TS80
|
||||||
|
#define TEMP_uV_LOOKUP_TS80
|
||||||
|
#define USB_PD_VMAX 12 // Maximum voltage for PD to negotiate
|
||||||
|
|
||||||
|
#define TIP_THERMAL_MASS 40
|
||||||
|
#define TIP_RESISTANCE 45 // x10 ohms, 4.5 typical for ts80 tips
|
||||||
|
|
||||||
|
#define LIS_ORI_FLIP
|
||||||
|
#define OLED_FLIP
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MODEL_TS80
|
||||||
|
#define VOLTAGE_DIV 780 // Default divider from schematic
|
||||||
|
#define CALIBRATION_OFFSET 900 // the adc offset in uV
|
||||||
|
#define PID_POWER_LIMIT 24 // Sets the max pwm power limit
|
||||||
|
#define POWER_LIMIT 24 // 24 watts default power limit
|
||||||
|
|
||||||
|
#define HARDWARE_MAX_WATTAGE_X10 180
|
||||||
|
|
||||||
|
#define POW_QC
|
||||||
|
#define POW_PD 0
|
||||||
|
#define TEMP_TMP36
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MODEL_TS80P
|
||||||
|
#define VOLTAGE_DIV 650 // Default for TS80P with slightly different resistors
|
||||||
|
#define CALIBRATION_OFFSET 1500 // the adc offset in uV
|
||||||
|
#define PID_POWER_LIMIT 35 // Sets the max pwm power limit
|
||||||
|
#define POWER_LIMIT 30 // 30 watts default power limit
|
||||||
|
|
||||||
|
#define HARDWARE_MAX_WATTAGE_X10 300
|
||||||
|
|
||||||
|
#define POW_PD 1
|
||||||
|
#define POW_QC 1
|
||||||
|
#define TEMP_NTC
|
||||||
|
#define I2C_SOFT
|
||||||
|
#define SC7_ORI_FLIP
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Miniware is swapping IMU's around a bit now, so we turn them all on
|
#define FLASH_LOGOADDR (0x08000000 + (62 * 1024))
|
||||||
|
|
||||||
#define ACCEL_MMA
|
|
||||||
#define ACCEL_LIS
|
|
||||||
#define ACCEL_SC7
|
|
||||||
#define ACCEL_MSA
|
|
||||||
#define ACCEL_BMA
|
|
||||||
|
|
||||||
#ifdef MODEL_TS100
|
|
||||||
#define SOLDERING_TEMP 320 // Default soldering temp is 320.0 °C
|
|
||||||
#define VOLTAGE_DIV 467 // 467 - Default divider from schematic
|
|
||||||
#define CALIBRATION_OFFSET 900 // 900 - Default adc offset in uV
|
|
||||||
#define MIN_CALIBRATION_OFFSET 100 // Min value for calibration
|
|
||||||
#define PID_POWER_LIMIT 70 // Sets the max pwm power limit
|
|
||||||
#define POWER_LIMIT 0 // 0 watts default limit
|
|
||||||
#define MAX_POWER_LIMIT 70 //
|
|
||||||
#define POWER_LIMIT_STEPS 5 //
|
|
||||||
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_TS100 //
|
|
||||||
#define TEMP_uV_LOOKUP_HAKKO //
|
|
||||||
#define USB_PD_VMAX 20 // Maximum voltage for PD to negotiate
|
|
||||||
#define PID_TIM_HZ (8) // Tick rate of the PID loop
|
|
||||||
#define MAX_TEMP_C 450 // Max soldering temp selectable °C
|
|
||||||
#define MAX_TEMP_F 850 // Max soldering temp selectable °F
|
|
||||||
#define MIN_TEMP_C 10 // Min soldering temp selectable °C
|
|
||||||
#define MIN_TEMP_F 60 // Min soldering temp selectable °F
|
|
||||||
#define MIN_BOOST_TEMP_C 250 // The min settable temp for boost mode °C
|
|
||||||
#define MIN_BOOST_TEMP_F 480 // The min settable temp for boost mode °F
|
|
||||||
#define POW_DC
|
|
||||||
|
|
||||||
#define POW_PD 0
|
|
||||||
|
|
||||||
#define TEMP_TMP36
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MODEL_TS80
|
|
||||||
#define SOLDERING_TEMP 320 // Default soldering temp is 320.0 °C
|
|
||||||
#define VOLTAGE_DIV 780 // Default divider from schematic
|
|
||||||
#define PID_POWER_LIMIT 24 // Sets the max pwm power limit
|
|
||||||
#define CALIBRATION_OFFSET 900 // the adc offset in uV
|
|
||||||
#define MIN_CALIBRATION_OFFSET 100 // Min value for calibration
|
|
||||||
#define POWER_LIMIT 24 // 24 watts default power limit
|
|
||||||
#define MAX_POWER_LIMIT 40 //
|
|
||||||
#define POWER_LIMIT_STEPS 2 //
|
|
||||||
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_TS80 //
|
|
||||||
#define TEMP_uV_LOOKUP_TS80 //
|
|
||||||
#define USB_PD_VMAX 12 // Maximum voltage for PD to negotiate
|
|
||||||
#define PID_TIM_HZ (8) // Tick rate of the PID loop
|
|
||||||
#define MAX_TEMP_C 450 // Max soldering temp selectable °C
|
|
||||||
#define MAX_TEMP_F 850 // Max soldering temp selectable °F
|
|
||||||
#define MIN_TEMP_C 10 // Min soldering temp selectable °C
|
|
||||||
#define MIN_TEMP_F 60 // Min soldering temp selectable °F
|
|
||||||
#define MIN_BOOST_TEMP_C 250 // The min settable temp for boost mode °C
|
|
||||||
#define MIN_BOOST_TEMP_F 480 // The min settable temp for boost mode °F
|
|
||||||
|
|
||||||
#define POW_QC
|
|
||||||
#define POW_PD 0
|
|
||||||
#define TEMP_TMP36
|
|
||||||
#define LIS_ORI_FLIP
|
|
||||||
#define OLED_FLIP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MODEL_TS80P
|
|
||||||
#define SOLDERING_TEMP 320 // Default soldering temp is 320.0 °C
|
|
||||||
#define VOLTAGE_DIV 650 // Default for TS80P with slightly different resistors
|
|
||||||
#define PID_POWER_LIMIT 35 // Sets the max pwm power limit
|
|
||||||
#define CALIBRATION_OFFSET 1500 // the adc offset in uV
|
|
||||||
#define MIN_CALIBRATION_OFFSET 100 // Min value for calibration
|
|
||||||
#define POWER_LIMIT 30 // 30 watts default power limit
|
|
||||||
#define MAX_POWER_LIMIT 40 //
|
|
||||||
#define POWER_LIMIT_STEPS 2 //
|
|
||||||
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_TS80 //
|
|
||||||
#define TEMP_uV_LOOKUP_TS80 //
|
|
||||||
#define USB_PD_VMAX 12 // Maximum voltage for PD to negotiate
|
|
||||||
#define PID_TIM_HZ (8) // Tick rate of the PID loop
|
|
||||||
#define MAX_TEMP_C 450 // Max soldering temp selectable °C
|
|
||||||
#define MAX_TEMP_F 850 // Max soldering temp selectable °F
|
|
||||||
#define MIN_TEMP_C 10 // Min soldering temp selectable °C
|
|
||||||
#define MIN_TEMP_F 60 // Min soldering temp selectable °F
|
|
||||||
#define MIN_BOOST_TEMP_C 250 // The min settable temp for boost mode °C
|
|
||||||
#define MIN_BOOST_TEMP_F 480 // The min settable temp for boost mode °F
|
|
||||||
|
|
||||||
#define POW_PD 1
|
|
||||||
#define POW_QC 1
|
|
||||||
#define TEMP_NTC
|
|
||||||
#define I2C_SOFT
|
|
||||||
#define LIS_ORI_FLIP
|
|
||||||
#define SC7_ORI_FLIP
|
|
||||||
#define OLED_FLIP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MODEL_TS100
|
|
||||||
#define HARDWARE_MAX_WATTAGE_X10 750
|
|
||||||
#define TIP_THERMAL_MASS 65 // X10 watts to raise 1 deg C in 1 second
|
|
||||||
#define TIP_RESISTANCE 75 // x10 ohms, 7.5 typical for ts100 tips
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MODEL_TS80
|
|
||||||
#define HARDWARE_MAX_WATTAGE_X10 180
|
|
||||||
#define TIP_THERMAL_MASS 40
|
|
||||||
#define TIP_RESISTANCE 45 // x10 ohms, 4.5 typical for ts80 tips
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MODEL_TS80P
|
|
||||||
#define HARDWARE_MAX_WATTAGE_X10 300
|
|
||||||
#define TIP_THERMAL_MASS 40
|
|
||||||
#define TIP_RESISTANCE 45 // x10 ohms, 4.5 typical for ts80 tips
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define FLASH_LOGOADDR (0x08000000 + (62 * 1024))
|
|
||||||
|
|||||||
@@ -124,7 +124,7 @@
|
|||||||
#define POWER_LIMIT_STEPS 5 //
|
#define POWER_LIMIT_STEPS 5 //
|
||||||
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_PINECIL // Uses TS100 resistors
|
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_PINECIL // Uses TS100 resistors
|
||||||
#define TEMP_uV_LOOKUP_HAKKO // Use Hakko lookup table
|
#define TEMP_uV_LOOKUP_HAKKO // Use Hakko lookup table
|
||||||
#define USB_PD_VMAX 20 // Maximum voltage for PD to negotiate
|
#define USB_PD_VMAX 21 // Maximum voltage for PD to negotiate
|
||||||
#define PID_TIM_HZ (8) // Tick rate of the PID loop
|
#define PID_TIM_HZ (8) // Tick rate of the PID loop
|
||||||
#define MAX_TEMP_C 450 // Max soldering temp selectable °C
|
#define MAX_TEMP_C 450 // Max soldering temp selectable °C
|
||||||
#define MAX_TEMP_F 850 // Max soldering temp selectable °F
|
#define MAX_TEMP_F 850 // Max soldering temp selectable °F
|
||||||
@@ -153,3 +153,5 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define FLASH_LOGOADDR (0x08000000 + (126 * 1024))
|
#define FLASH_LOGOADDR (0x08000000 + (126 * 1024))
|
||||||
|
|
||||||
|
#define HAS_POWER_DEBUG_MENU
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* Author: Ralim
|
* Author: Ralim
|
||||||
*/
|
*/
|
||||||
#include "FreeRTOS.h"
|
#include "FreeRTOS.h"
|
||||||
#include "gui.hpp"
|
#include "settingsGUI.hpp"
|
||||||
#include "task.h"
|
#include "task.h"
|
||||||
#include <Buttons.hpp>
|
#include <Buttons.hpp>
|
||||||
uint32_t lastButtonTime = 0;
|
uint32_t lastButtonTime = 0;
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ const uint8_t WarningBlock24[] = {
|
|||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x30, 0x0C, 0x02, 0xF1, 0xF1, 0xF1, 0x02, 0x0C, 0x30, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x30, 0x0C, 0x02, 0xF1, 0xF1, 0xF1, 0x02, 0x0C, 0x30, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0xC0, 0xB0, 0x8C, 0x83, 0x80, 0x80, 0x80, 0x80, 0xB3, 0xB3, 0xB3, 0x80, 0x80, 0x80, 0x80, 0x83, 0x8C, 0xB0, 0xC0, 0x00, 0x00};
|
0x00, 0x00, 0x00, 0xC0, 0xB0, 0x8C, 0x83, 0x80, 0x80, 0x80, 0x80, 0xB3, 0xB3, 0xB3, 0x80, 0x80, 0x80, 0x80, 0x83, 0x8C, 0xB0, 0xC0, 0x00, 0x00};
|
||||||
|
|
||||||
#if defined(MODEL_TS100) + defined(MODEL_Pinecil) >= 1
|
#if defined(MODEL_TS100) + defined(MODEL_Pinecil) > 0
|
||||||
const uint8_t buttonA[] = {
|
const uint8_t buttonA[] = {
|
||||||
// width = 42
|
// width = 42
|
||||||
// height = 16
|
// height = 16
|
||||||
@@ -156,7 +156,7 @@ const uint8_t disconnectedTip[] = {
|
|||||||
0x04, 0x31, 0x38, 0x1c, 0x0e, 0x04, 0x01, 0x03, 0x07, 0x0e, 0x1c, 0x39, 0x30, 0x01, 0x03, 0x00, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x09, 0x0f, 0x00};
|
0x04, 0x31, 0x38, 0x1c, 0x0e, 0x04, 0x01, 0x03, 0x07, 0x0e, 0x1c, 0x39, 0x30, 0x01, 0x03, 0x00, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x09, 0x0f, 0x00};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(MODEL_TS80) + defined(MODEL_TS80P) >= 1
|
#if defined(MODEL_TS80) + defined(MODEL_TS80P) > 0
|
||||||
const uint8_t buttonA[] = {
|
const uint8_t buttonA[] = {
|
||||||
// width = 42
|
// width = 42
|
||||||
// height = 16
|
// height = 16
|
||||||
|
|||||||
@@ -5,11 +5,16 @@
|
|||||||
* Author: Ralim
|
* Author: Ralim
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "LIS2DH12_defines.hpp"
|
||||||
#include <SC7A20.hpp>
|
#include <SC7A20.hpp>
|
||||||
#include <SC7A20_defines.h>
|
#include <SC7A20_defines.h>
|
||||||
#include <array>
|
#include <array>
|
||||||
|
|
||||||
uint8_t SC7A20::activeAddress;
|
bool SC7A20::isInImitationMode;
|
||||||
|
/*
|
||||||
|
- This little accelerometer seems to come in two forms, its "normal" setup, and then one where it imitates the LIS2DH12
|
||||||
|
- This can be detected by checking the whoami registers
|
||||||
|
*/
|
||||||
|
|
||||||
bool SC7A20::detect() {
|
bool SC7A20::detect() {
|
||||||
if (FRToSI2C::probe(SC7A20_ADDRESS)) {
|
if (FRToSI2C::probe(SC7A20_ADDRESS)) {
|
||||||
@@ -17,7 +22,7 @@ bool SC7A20::detect() {
|
|||||||
uint8_t id = 0;
|
uint8_t id = 0;
|
||||||
if (FRToSI2C::Mem_Read(SC7A20_ADDRESS, SC7A20_WHO_AMI_I, &id, 1)) {
|
if (FRToSI2C::Mem_Read(SC7A20_ADDRESS, SC7A20_WHO_AMI_I, &id, 1)) {
|
||||||
if (id == SC7A20_WHO_AM_I_VALUE) {
|
if (id == SC7A20_WHO_AM_I_VALUE) {
|
||||||
activeAddress = SC7A20_ADDRESS;
|
isInImitationMode = false;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -27,7 +32,7 @@ bool SC7A20::detect() {
|
|||||||
uint8_t id = 0;
|
uint8_t id = 0;
|
||||||
if (FRToSI2C::Mem_Read(SC7A20_ADDRESS2, SC7A20_WHO_AMI_I, &id, 1)) {
|
if (FRToSI2C::Mem_Read(SC7A20_ADDRESS2, SC7A20_WHO_AMI_I, &id, 1)) {
|
||||||
if (id == SC7A20_WHO_AM_I_VALUE) {
|
if (id == SC7A20_WHO_AM_I_VALUE) {
|
||||||
activeAddress = SC7A20_ADDRESS2;
|
isInImitationMode = true;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -54,6 +59,20 @@ static const FRToSI2C::I2C_REG i2c_registers[] = {
|
|||||||
|
|
||||||
//
|
//
|
||||||
};
|
};
|
||||||
|
static const FRToSI2C::I2C_REG i2c_registers_alt[] = {{LIS_CTRL_REG1, 0b00110111, 0}, // 200Hz XYZ
|
||||||
|
{LIS_CTRL_REG2, 0b00000000, 0}, //
|
||||||
|
{LIS_CTRL_REG3, 0b01100000, 0}, // Setup interrupt pins
|
||||||
|
{LIS_CTRL_REG4, 0b00001000, 0}, // Block update mode off, HR on
|
||||||
|
{LIS_CTRL_REG5, 0b00000010, 0}, //
|
||||||
|
{LIS_CTRL_REG6, 0b01100010, 0},
|
||||||
|
// Basically setup the unit to run, and enable 4D orientation detection
|
||||||
|
{LIS_INT2_CFG, 0b01111110, 0}, // setup for movement detection
|
||||||
|
{LIS_INT2_THS, 0x28, 0}, //
|
||||||
|
{LIS_INT2_DURATION, 64, 0}, //
|
||||||
|
{LIS_INT1_CFG, 0b01111110, 0}, //
|
||||||
|
{LIS_INT1_THS, 0x28, 0}, //
|
||||||
|
{LIS_INT1_DURATION, 64, 0}};
|
||||||
|
|
||||||
bool SC7A20::initalize() {
|
bool SC7A20::initalize() {
|
||||||
// Setup acceleration readings
|
// Setup acceleration readings
|
||||||
// 2G range
|
// 2G range
|
||||||
@@ -63,15 +82,18 @@ bool SC7A20::initalize() {
|
|||||||
// Orientation recognition in symmetrical mode
|
// Orientation recognition in symmetrical mode
|
||||||
// Hysteresis is set to ~ 16 counts
|
// Hysteresis is set to ~ 16 counts
|
||||||
// Theta blocking is set to 0b10
|
// Theta blocking is set to 0b10
|
||||||
|
if (isInImitationMode) {
|
||||||
return FRToSI2C::writeRegistersBulk(activeAddress, i2c_registers, sizeof(i2c_registers) / sizeof(i2c_registers[0]));
|
return FRToSI2C::writeRegistersBulk(SC7A20_ADDRESS2, i2c_registers_alt, sizeof(i2c_registers_alt) / sizeof(i2c_registers_alt[0]));
|
||||||
|
} else {
|
||||||
|
return FRToSI2C::writeRegistersBulk(SC7A20_ADDRESS, i2c_registers, sizeof(i2c_registers) / sizeof(i2c_registers[0]));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SC7A20::getAxisReadings(int16_t &x, int16_t &y, int16_t &z) {
|
void SC7A20::getAxisReadings(int16_t &x, int16_t &y, int16_t &z) {
|
||||||
// We can tell the accelerometer to output in LE mode which makes this simple
|
// We can tell the accelerometer to output in LE mode which makes this simple
|
||||||
uint16_t sensorData[3] = {0, 0, 0};
|
uint16_t sensorData[3] = {0, 0, 0};
|
||||||
|
|
||||||
if (FRToSI2C::Mem_Read(SC7A20_ADDRESS, SC7A20_OUT_X_L, (uint8_t *)sensorData, 6) == false) {
|
if (FRToSI2C::Mem_Read(isInImitationMode ? SC7A20_ADDRESS2 : SC7A20_ADDRESS, isInImitationMode ? SC7A20_OUT_X_L_ALT : SC7A20_OUT_X_L, (uint8_t *)sensorData, 6) == false) {
|
||||||
x = y = z = 0;
|
x = y = z = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ public:
|
|||||||
static bool initalize();
|
static bool initalize();
|
||||||
// 1 = rh, 2,=lh, 8=flat
|
// 1 = rh, 2,=lh, 8=flat
|
||||||
static Orientation getOrientation() {
|
static Orientation getOrientation() {
|
||||||
uint8_t val = ((FRToSI2C::I2C_RegisterRead(activeAddress, SC7A20_INT2_SOURCE) >> 2) - 1);
|
uint8_t val = ((FRToSI2C::I2C_RegisterRead(isInImitationMode ? SC7A20_ADDRESS2 : SC7A20_ADDRESS, SC7A20_INT2_SOURCE) >> 2) - 1);
|
||||||
if (val == 1) {
|
if (val == 1) {
|
||||||
#ifdef SC7_ORI_FLIP
|
#ifdef SC7_ORI_FLIP
|
||||||
return Orientation::ORIENTATION_RIGHT_HAND;
|
return Orientation::ORIENTATION_RIGHT_HAND;
|
||||||
@@ -36,7 +36,7 @@ public:
|
|||||||
static void getAxisReadings(int16_t &x, int16_t &y, int16_t &z);
|
static void getAxisReadings(int16_t &x, int16_t &y, int16_t &z);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static uint8_t activeAddress;
|
static bool isInImitationMode;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* CORE_DRIVERS_BMA223_HPP_ */
|
#endif /* CORE_DRIVERS_BMA223_HPP_ */
|
||||||
|
|||||||
@@ -23,6 +23,7 @@
|
|||||||
#define SC7A20_REFERENCE 0x26
|
#define SC7A20_REFERENCE 0x26
|
||||||
#define SC7A20_STATUS_REG 0x27
|
#define SC7A20_STATUS_REG 0x27
|
||||||
#define SC7A20_OUT_X_L 0x28
|
#define SC7A20_OUT_X_L 0x28
|
||||||
|
#define SC7A20_OUT_X_L_ALT 0xA8
|
||||||
#define SC7A20_OUT_X_H 0x29
|
#define SC7A20_OUT_X_H 0x29
|
||||||
#define SC7A20_OUT_Y_L 0x2A
|
#define SC7A20_OUT_Y_L 0x2A
|
||||||
#define SC7A20_OUT_Y_H 0x2B
|
#define SC7A20_OUT_Y_H 0x2B
|
||||||
|
|||||||
@@ -65,12 +65,25 @@ bool USBPowerDelivery::fusbPresent() {
|
|||||||
return detectionState == 1;
|
return detectionState == 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool USBPowerDelivery::isVBUSConnected() { return fusb.isVBUSConnected(); }
|
void USBPowerDelivery::triggerRenegotiation() {}
|
||||||
void USBPowerDelivery::triggerRenegotiation() {
|
bool USBPowerDelivery::isVBUSConnected() {
|
||||||
|
static uint8_t state = 0;
|
||||||
|
if (state) {
|
||||||
|
return state == 1;
|
||||||
|
}
|
||||||
|
if (fusb.isVBUSConnected()) {
|
||||||
|
state = 1;
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
state = 2;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
bool pdbs_dpm_evaluate_capability(const pd_msg *capabilities, pd_msg *request) {
|
pd_msg lastCapabilities;
|
||||||
|
pd_msg *USBPowerDelivery::getLastSeenCapabilities() { return &lastCapabilities; }
|
||||||
|
|
||||||
|
bool pdbs_dpm_evaluate_capability(const pd_msg *capabilities, pd_msg *request) {
|
||||||
|
memcpy(&lastCapabilities, capabilities, sizeof(pd_msg));
|
||||||
/* Get the number of PDOs */
|
/* Get the number of PDOs */
|
||||||
uint8_t numobj = PD_NUMOBJ_GET(capabilities);
|
uint8_t numobj = PD_NUMOBJ_GET(capabilities);
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#ifndef DRIVERS_USBPD_H_
|
#ifndef DRIVERS_USBPD_H_
|
||||||
#define DRIVERS_USBPD_H_
|
#define DRIVERS_USBPD_H_
|
||||||
#include "configuration.h"
|
#include "configuration.h"
|
||||||
|
#include "pdb_msg.h"
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
@@ -9,17 +10,19 @@
|
|||||||
#if POW_PD
|
#if POW_PD
|
||||||
class USBPowerDelivery {
|
class USBPowerDelivery {
|
||||||
public:
|
public:
|
||||||
static bool start(); // Start the PD stack
|
static bool start(); // Start the PD stack
|
||||||
static bool negotiationComplete(); // Has negotiation completed to a voltage > 5v
|
static bool negotiationComplete(); // Has negotiation completed to a voltage > 5v
|
||||||
static bool negotiationInProgress(); // Is negotiation ongoing
|
static bool negotiationInProgress(); // Is negotiation ongoing
|
||||||
static bool fusbPresent(); // Is the FUSB302 present on the bus
|
static bool fusbPresent(); // Is the FUSB302 present on the bus
|
||||||
static void PPSTimerCallback(); // PPS Timer
|
static void PPSTimerCallback(); // PPS Timer
|
||||||
static void IRQOccured(); // Thread callback that an irq occured
|
static void IRQOccured(); // Thread callback that an irq occured
|
||||||
static void step(); // Iterate the step machine
|
static void step(); // Iterate the step machine
|
||||||
static bool negotiationHasWorked(); // Has PD negotiation worked (are we in a PD contract)
|
static bool negotiationHasWorked(); // Has PD negotiation worked (are we in a PD contract)
|
||||||
static uint8_t getStateNumber(); // Debugging - Get the internal state number
|
static uint8_t getStateNumber(); // Debugging - Get the internal state number
|
||||||
static bool isVBUSConnected(); // Is the VBus pin connected on the FUSB302
|
static bool isVBUSConnected(); // Is the VBus pin connected on the FUSB302
|
||||||
static void triggerRenegotiation(); // Trigger a restart of voltage selection
|
static void triggerRenegotiation(); // Trigger a restart of voltage selection
|
||||||
|
static bool isVBUSConnected(); // Is the VBus pin connected on the FUSB302
|
||||||
|
static pd_msg *getLastSeenCapabilities(); // returns pointer to the last seen capabilities from the powersource
|
||||||
private:
|
private:
|
||||||
//
|
//
|
||||||
static int detectionState;
|
static int detectionState;
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ extern const bool HasFahrenheit;
|
|||||||
extern const char *SymbolPlus;
|
extern const char *SymbolPlus;
|
||||||
extern const char *SymbolMinus;
|
extern const char *SymbolMinus;
|
||||||
extern const char *SymbolSpace;
|
extern const char *SymbolSpace;
|
||||||
|
extern const char *SymbolAmps;
|
||||||
extern const char *SymbolDot;
|
extern const char *SymbolDot;
|
||||||
extern const char *SymbolDegC;
|
extern const char *SymbolDegC;
|
||||||
extern const char *SymbolDegF;
|
extern const char *SymbolDegF;
|
||||||
@@ -24,6 +25,10 @@ extern const char *SymbolVolts;
|
|||||||
extern const char *SymbolDC;
|
extern const char *SymbolDC;
|
||||||
extern const char *SymbolCellCount;
|
extern const char *SymbolCellCount;
|
||||||
extern const char *SymbolVersionNumber;
|
extern const char *SymbolVersionNumber;
|
||||||
|
extern const char *SymbolPDDebug;
|
||||||
|
extern const char *SymbolState;
|
||||||
|
extern const char *SymbolNoVBus;
|
||||||
|
extern const char *SymbolVBus;
|
||||||
|
|
||||||
extern const char *DebugMenu[];
|
extern const char *DebugMenu[];
|
||||||
extern const char *AccelTypeNames[];
|
extern const char *AccelTypeNames[];
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* gui.h
|
* settingsGUI.h
|
||||||
*
|
*
|
||||||
* Created on: 3Sep.,2017
|
* Created on: 3Sep.,2017
|
||||||
* Author: Ben V. Brown
|
* Author: Ben V. Brown
|
||||||
@@ -3,10 +3,10 @@
|
|||||||
#include "Translation_multi.h"
|
#include "Translation_multi.h"
|
||||||
#include "brieflz.h"
|
#include "brieflz.h"
|
||||||
#include "configuration.h"
|
#include "configuration.h"
|
||||||
#include "gui.hpp"
|
#include "settingsGUI.hpp"
|
||||||
|
|
||||||
const TranslationIndexTable *Tr = nullptr;
|
const TranslationIndexTable *Tr = nullptr;
|
||||||
const char * TranslationStrings = nullptr;
|
const char *TranslationStrings = nullptr;
|
||||||
|
|
||||||
static uint8_t selectedLangIndex = 255;
|
static uint8_t selectedLangIndex = 255;
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ void prepareTranslations() {
|
|||||||
|
|
||||||
const TranslationData *translationData;
|
const TranslationData *translationData;
|
||||||
uint16_t buffer_remaining_size = translation_data_out_buffer_size;
|
uint16_t buffer_remaining_size = translation_data_out_buffer_size;
|
||||||
uint8_t * buffer_next_ptr = translation_data_out_buffer;
|
uint8_t *buffer_next_ptr = translation_data_out_buffer;
|
||||||
if (langMeta.translation_is_compressed) {
|
if (langMeta.translation_is_compressed) {
|
||||||
unsigned int outsize;
|
unsigned int outsize;
|
||||||
outsize = blz_depack_srcsize(langMeta.translation_data, buffer_next_ptr, langMeta.translation_size);
|
outsize = blz_depack_srcsize(langMeta.translation_data, buffer_next_ptr, langMeta.translation_size);
|
||||||
@@ -55,7 +55,7 @@ void prepareTranslations() {
|
|||||||
memset(DynamicFontSections, 0, FontSectionsCount * sizeof(DynamicFontSections[0]));
|
memset(DynamicFontSections, 0, FontSectionsCount * sizeof(DynamicFontSections[0]));
|
||||||
for (int i = 0; i < FontSectionDataCount; i++) {
|
for (int i = 0; i < FontSectionDataCount; i++) {
|
||||||
const auto &fontSectionDataInfo = FontSectionDataInfos[i];
|
const auto &fontSectionDataInfo = FontSectionDataInfos[i];
|
||||||
auto & fontSection = DynamicFontSections[i];
|
auto &fontSection = DynamicFontSections[i];
|
||||||
fontSection.symbol_start = fontSectionDataInfo.symbol_start;
|
fontSection.symbol_start = fontSectionDataInfo.symbol_start;
|
||||||
fontSection.symbol_end = fontSection.symbol_start + fontSectionDataInfo.symbol_count;
|
fontSection.symbol_end = fontSection.symbol_start + fontSectionDataInfo.symbol_count;
|
||||||
const uint16_t font12_size = fontSectionDataInfo.symbol_count * (12 * 16 / 8);
|
const uint16_t font12_size = fontSectionDataInfo.symbol_count * (12 * 16 / 8);
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* gui.cpp
|
* settingsGUI.cpp
|
||||||
*
|
*
|
||||||
* Created on: 3Sep.,2017
|
* Created on: 3Sep.,2017
|
||||||
* Author: Ben V. Brown
|
* Author: Ben V. Brown
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "gui.hpp"
|
#include "settingsGUI.hpp"
|
||||||
#include "Buttons.hpp"
|
#include "Buttons.hpp"
|
||||||
#include "ScrollMessage.hpp"
|
#include "ScrollMessage.hpp"
|
||||||
#include "TipThermoModel.h"
|
#include "TipThermoModel.h"
|
||||||
@@ -11,21 +11,22 @@ extern "C" {
|
|||||||
#include "Buttons.hpp"
|
#include "Buttons.hpp"
|
||||||
#include "I2CBB.hpp"
|
#include "I2CBB.hpp"
|
||||||
#include "LIS2DH12.hpp"
|
#include "LIS2DH12.hpp"
|
||||||
|
#include "MMA8652FC.hpp"
|
||||||
#include "OLED.hpp"
|
#include "OLED.hpp"
|
||||||
#include "Settings.h"
|
#include "Settings.h"
|
||||||
#include "TipThermoModel.h"
|
#include "TipThermoModel.h"
|
||||||
#include "Translation.h"
|
#include "Translation.h"
|
||||||
#include "cmsis_os.h"
|
#include "cmsis_os.h"
|
||||||
#include "configuration.h"
|
#include "configuration.h"
|
||||||
|
#include "history.hpp"
|
||||||
#include "main.hpp"
|
#include "main.hpp"
|
||||||
|
#include "power.hpp"
|
||||||
|
#include "settingsGUI.hpp"
|
||||||
#include "stdlib.h"
|
#include "stdlib.h"
|
||||||
#include "string.h"
|
#include "string.h"
|
||||||
#include <MMA8652FC.hpp>
|
|
||||||
#include <gui.hpp>
|
|
||||||
#include <history.hpp>
|
|
||||||
#include <power.hpp>
|
|
||||||
#if POW_PD
|
#if POW_PD
|
||||||
#include "USBPD.h"
|
#include "USBPD.h"
|
||||||
|
#include "pd.h"
|
||||||
#endif
|
#endif
|
||||||
// File local variables
|
// File local variables
|
||||||
extern uint32_t currentTempTargetDegC;
|
extern uint32_t currentTempTargetDegC;
|
||||||
@@ -796,6 +797,82 @@ void showDebugMenu(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if POW_PD
|
||||||
|
#ifdef HAS_POWER_DEBUG_MENU
|
||||||
|
static void showPDDebug(void) {
|
||||||
|
// Print out the USB-PD state
|
||||||
|
// Basically this is like the Debug menu, but instead we want to print out the PD status
|
||||||
|
uint8_t screen = 0;
|
||||||
|
ButtonState b;
|
||||||
|
for (;;) {
|
||||||
|
OLED::clearScreen(); // Ensure the buffer starts clean
|
||||||
|
OLED::setCursor(0, 0); // Position the cursor at the 0,0 (top left)
|
||||||
|
OLED::print(SymbolPDDebug, FontStyle::SMALL); // Print Title
|
||||||
|
OLED::setCursor(0, 8); // second line
|
||||||
|
if (screen == 0) {
|
||||||
|
// Print the PD state machine
|
||||||
|
OLED::print(SymbolState, FontStyle::SMALL);
|
||||||
|
OLED::print(SymbolSpace, FontStyle::SMALL);
|
||||||
|
OLED::printNumber(USBPowerDelivery::getStateNumber(), 2, FontStyle::SMALL, true);
|
||||||
|
OLED::print(SymbolSpace, FontStyle::SMALL);
|
||||||
|
// Also print vbus mod status
|
||||||
|
if (USBPowerDelivery::fusbPresent()) {
|
||||||
|
if (USBPowerDelivery::negotiationComplete() || (xTaskGetTickCount() > (TICKS_SECOND * 10))) {
|
||||||
|
if (!USBPowerDelivery::isVBUSConnected()) {
|
||||||
|
OLED::print(SymbolNoVBus, FontStyle::SMALL);
|
||||||
|
} else {
|
||||||
|
OLED::print(SymbolVBus, FontStyle::SMALL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Print out the Proposed power options one by one
|
||||||
|
auto lastCaps = USBPowerDelivery::getLastSeenCapabilities();
|
||||||
|
uint8_t numobj = PD_NUMOBJ_GET(lastCaps);
|
||||||
|
if ((screen - 1) < numobj) {
|
||||||
|
int voltage_mv = 0;
|
||||||
|
int min_voltage = 0;
|
||||||
|
int current_a_x100 = 0;
|
||||||
|
if ((lastCaps->obj[screen - 1] & PD_PDO_TYPE) == PD_PDO_TYPE_FIXED) {
|
||||||
|
voltage_mv = PD_PDV2MV(PD_PDO_SRC_FIXED_VOLTAGE_GET(lastCaps->obj[screen - 1])); // voltage in mV units
|
||||||
|
current_a_x100 = PD_PDO_SRC_FIXED_CURRENT_GET(lastCaps->obj[screen - 1]); // current in 10mA units
|
||||||
|
} else {
|
||||||
|
voltage_mv = PD_PAV2MV(PD_APDO_PPS_MAX_VOLTAGE_GET(lastCaps->obj[screen - 1]));
|
||||||
|
min_voltage = PD_PAV2MV(PD_APDO_PPS_MIN_VOLTAGE_GET(lastCaps->obj[screen - 1]));
|
||||||
|
current_a_x100 = PD_PAI2CA(PD_APDO_PPS_CURRENT_GET(lastCaps->obj[screen - 1])); // max current in 10mA units
|
||||||
|
}
|
||||||
|
// print out this entry of the proposal
|
||||||
|
OLED::printNumber(screen, 1, FontStyle::SMALL, true); // print the entry number
|
||||||
|
OLED::print(SymbolSpace, FontStyle::SMALL);
|
||||||
|
if (min_voltage > 0) {
|
||||||
|
OLED::printNumber(min_voltage / 1000, 2, FontStyle::SMALL, true); // print the voltage
|
||||||
|
OLED::print(SymbolMinus, FontStyle::SMALL);
|
||||||
|
}
|
||||||
|
OLED::printNumber(voltage_mv / 1000, 2, FontStyle::SMALL, true); // print the voltage
|
||||||
|
OLED::print(SymbolVolts, FontStyle::SMALL);
|
||||||
|
OLED::print(SymbolSpace, FontStyle::SMALL);
|
||||||
|
OLED::printNumber(current_a_x100 / 100, 2, FontStyle::SMALL, true); // print the current in 0.1A res
|
||||||
|
OLED::print(SymbolDot, FontStyle::SMALL);
|
||||||
|
OLED::printNumber(current_a_x100 % 100, 2, FontStyle::SMALL, true); // print the current in 0.1A res
|
||||||
|
OLED::print(SymbolAmps, FontStyle::SMALL);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
screen = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
OLED::refresh();
|
||||||
|
b = getButtonState();
|
||||||
|
if (b == BUTTON_B_SHORT)
|
||||||
|
return;
|
||||||
|
else if (b == BUTTON_F_SHORT) {
|
||||||
|
screen++;
|
||||||
|
}
|
||||||
|
GUIDelay();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
void showWarnings() {
|
void showWarnings() {
|
||||||
// Display alert if settings were reset
|
// Display alert if settings were reset
|
||||||
if (settingsWereReset) {
|
if (settingsWereReset) {
|
||||||
@@ -863,8 +940,16 @@ void startGUITask(void const *argument) {
|
|||||||
getTipRawTemp(1); // reset filter
|
getTipRawTemp(1); // reset filter
|
||||||
|
|
||||||
OLED::setRotation(getSettingValue(SettingsOptions::OrientationMode) & 1);
|
OLED::setRotation(getSettingValue(SettingsOptions::OrientationMode) & 1);
|
||||||
|
// If the front button is held down, on supported devices, show PD debugging metrics
|
||||||
|
#if POW_PD
|
||||||
|
#ifdef HAS_POWER_DEBUG_MENU
|
||||||
|
if (getButtonA()) {
|
||||||
|
showPDDebug();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
BootLogo::handleShowingLogo((uint8_t *)FLASH_LOGOADDR);
|
||||||
|
|
||||||
// BootLogo::handleShowingLogo((uint8_t *)FLASH_LOGOADDR);
|
|
||||||
showWarnings();
|
showWarnings();
|
||||||
if (getSettingValue(SettingsOptions::AutoStartMode)) {
|
if (getSettingValue(SettingsOptions::AutoStartMode)) {
|
||||||
// jump directly to the autostart mode
|
// jump directly to the autostart mode
|
||||||
|
|||||||
@@ -313,7 +313,7 @@ $(shell find $(DEVICE_BSP_DIR) -type d \( $(EXCLUDED_DIRS) \) -prune -false -o
|
|||||||
$(shell find $(SOURCE_MIDDLEWARES_DIR) -type f -name '*.cpp')
|
$(shell find $(SOURCE_MIDDLEWARES_DIR) -type f -name '*.cpp')
|
||||||
|
|
||||||
# code optimisation ------------------------------------------------------------
|
# code optimisation ------------------------------------------------------------
|
||||||
OPTIM=-Os -finline-small-functions -findirect-inlining -fdiagnostics-color -ffunction-sections -fdata-sections -fshort-enums -fsingle-precision-constant -ffreestanding -fno-common
|
OPTIM=-Os -flto -finline-small-functions -fshort-wchar -findirect-inlining -fdiagnostics-color -ffunction-sections -fdata-sections -fshort-enums -fsingle-precision-constant -fno-common
|
||||||
|
|
||||||
# global defines ---------------------------------------------------------------
|
# global defines ---------------------------------------------------------------
|
||||||
GLOBAL_DEFINES += $(DEV_GLOBAL_DEFS) -D USE_RTOS_SYSTICK -D MODEL_$(model)
|
GLOBAL_DEFINES += $(DEV_GLOBAL_DEFS) -D USE_RTOS_SYSTICK -D MODEL_$(model)
|
||||||
@@ -412,8 +412,6 @@ CXXFLAGS=$(DEV_CXXFLAGS) \
|
|||||||
-fno-non-call-exceptions \
|
-fno-non-call-exceptions \
|
||||||
-fno-use-cxa-atexit \
|
-fno-use-cxa-atexit \
|
||||||
-fno-strict-aliasing \
|
-fno-strict-aliasing \
|
||||||
-fno-rtti \
|
|
||||||
-fno-exceptions \
|
|
||||||
-fno-threadsafe-statics \
|
-fno-threadsafe-statics \
|
||||||
-T$(LDSCRIPT)
|
-T$(LDSCRIPT)
|
||||||
|
|
||||||
@@ -426,7 +424,7 @@ CFLAGS=$(DEV_CFLAGS) \
|
|||||||
$(GLOBAL_DEFINES) \
|
$(GLOBAL_DEFINES) \
|
||||||
-D${COMPILER} \
|
-D${COMPILER} \
|
||||||
-MMD \
|
-MMD \
|
||||||
-std=gnu99 \
|
-std=gnu11 \
|
||||||
$(OPTIM) \
|
$(OPTIM) \
|
||||||
-T$(LDSCRIPT) \
|
-T$(LDSCRIPT) \
|
||||||
-c
|
-c
|
||||||
|
|||||||
4342
source/Middlewares/Third_Party/FreeRTOS/Source/queue.c
vendored
4342
source/Middlewares/Third_Party/FreeRTOS/Source/queue.c
vendored
File diff suppressed because it is too large
Load Diff
@@ -4,4 +4,4 @@
|
|||||||
* i.e.: BUILD_VERSION = 'Rel. v2.08' --> Will generated to: 'v2.08.1a2b3c4'
|
* i.e.: BUILD_VERSION = 'Rel. v2.08' --> Will generated to: 'v2.08.1a2b3c4'
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define BUILD_VERSION "v2.17"
|
#define BUILD_VERSION "v2.18"
|
||||||
|
|||||||
Reference in New Issue
Block a user