mirror of
https://github.com/Ralim/IronOS.git
synced 2025-02-26 07:53:55 +00:00
Compare commits
516 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4c17b0443c | ||
|
|
22d0b0d643 | ||
|
|
e6a080c33d | ||
|
|
078b8f5626 | ||
|
|
165a9952c2 | ||
|
|
3bb1b7bc32 | ||
|
|
f5cb42c9d7 | ||
|
|
e2eea84e36 | ||
|
|
4e36ee8142 | ||
|
|
8da8960192 | ||
|
|
e9115ef507 | ||
|
|
9772e4d0ea | ||
|
|
670606a26f | ||
|
|
9ab393881e | ||
|
|
648347c6b2 | ||
|
|
e562c3a9f1 | ||
|
|
4e46676bec | ||
|
|
f7d7f5cd07 | ||
|
|
2ecf9c9742 | ||
|
|
e6f1eb6729 | ||
|
|
cc269361b5 | ||
|
|
9ec92298f3 | ||
|
|
c0bde3c678 | ||
|
|
a5975b3385 | ||
|
|
14eb587856 | ||
|
|
fd7db70fde | ||
|
|
e578e5a844 | ||
|
|
c4a2ed8482 | ||
|
|
cfa7258f00 | ||
|
|
b3e3a7e1e5 | ||
|
|
4dc2afb8b3 | ||
|
|
103599deca | ||
|
|
d90d620a51 | ||
|
|
e8188f4caa | ||
|
|
7377f88b83 | ||
|
|
e37ecdcf75 | ||
|
|
c2fc4f911b | ||
|
|
c0b9440540 | ||
|
|
4e78c42f43 | ||
|
|
665badd227 | ||
|
|
0b98224f3a | ||
|
|
baeb1091b8 | ||
|
|
6c261cf754 | ||
|
|
79f46b4ccd | ||
|
|
12729821fa | ||
|
|
69f0f43c1a | ||
|
|
0a00e3fee3 | ||
|
|
210f1a2ff0 | ||
|
|
c68cedf8cf | ||
|
|
d808345b5b | ||
|
|
5654ec0db2 | ||
|
|
38eec2f8e2 | ||
|
|
d5af6447e3 | ||
|
|
dafde85a4b | ||
|
|
c1ebc869ca | ||
|
|
3f98b2d111 | ||
|
|
9b66f60b25 | ||
|
|
70565de2e5 | ||
|
|
1b562c6466 | ||
|
|
1fcee45146 | ||
|
|
55903020e9 | ||
|
|
d1d403376f | ||
|
|
943d6bf0bd | ||
|
|
a73f634cff | ||
|
|
787bc46bdc | ||
|
|
0b8192b690 | ||
|
|
62dd2abf12 | ||
|
|
923915ca90 | ||
|
|
232009bf54 | ||
|
|
fd4d93db64 | ||
|
|
2c04f2ba2e | ||
|
|
5e35029689 | ||
|
|
e5d68391de | ||
|
|
a5caac5587 | ||
|
|
47789e1af6 | ||
|
|
c920f5accf | ||
|
|
79efa3624a | ||
|
|
d0382cb256 | ||
|
|
0b7b17fc34 | ||
|
|
622760104d | ||
|
|
4161b752d7 | ||
|
|
1fbc3be223 | ||
|
|
6612efda75 | ||
|
|
823a8a2e11 | ||
|
|
7404f9dc36 | ||
|
|
1b146ca3c0 | ||
|
|
3b409d5dae | ||
|
|
7cb83850a8 | ||
|
|
ae96806676 | ||
|
|
1fbf48bbfe | ||
|
|
ff240d9b25 | ||
|
|
8f213bd26a | ||
|
|
4107e18d27 | ||
|
|
32553ef44e | ||
|
|
c484e383ce | ||
|
|
1a039e065e | ||
|
|
4ed42c733f | ||
|
|
792234250a | ||
|
|
733c7dcd4d | ||
|
|
4b5fdbeaf8 | ||
|
|
236dbfb6d3 | ||
|
|
35db18f549 | ||
|
|
2b2ecbfb54 | ||
|
|
723b6874f4 | ||
|
|
59b36c2831 | ||
|
|
71c4a8760e | ||
|
|
f9f5aa49cb | ||
|
|
e9bcd165fa | ||
|
|
d4920d2039 | ||
|
|
e87c7dfc51 | ||
|
|
645324af83 | ||
|
|
d3fd506156 | ||
|
|
652c2147a0 | ||
|
|
7307c1a228 | ||
|
|
72441921c2 | ||
|
|
a9a6bcbc99 | ||
|
|
6ba40cef3d | ||
|
|
ee9998ee64 | ||
|
|
a0e621630a | ||
|
|
4b2df71394 | ||
|
|
90e369d9ca | ||
|
|
c238acc267 | ||
|
|
e1279957a2 | ||
|
|
3b3fd0fc87 | ||
|
|
0a066d58ce | ||
|
|
9b27da57f0 | ||
|
|
7899b3aee1 | ||
|
|
da56233b37 | ||
|
|
b333768166 | ||
|
|
1a115a520c | ||
|
|
4d5cc80d10 | ||
|
|
ec094e7720 | ||
|
|
4277758db7 | ||
|
|
1ecac417b0 | ||
|
|
d4cefa3952 | ||
|
|
c52862b153 | ||
|
|
4bb1afc0a5 | ||
|
|
be2407d792 | ||
|
|
ae65374205 | ||
|
|
74a177338f | ||
|
|
21d586153a | ||
|
|
37e87f826d | ||
|
|
fe6dfaa40b | ||
|
|
41ae8e9cbe | ||
|
|
cf3f1c9e5a | ||
|
|
71c450729e | ||
|
|
005856023d | ||
|
|
638cce8b1b | ||
|
|
82ed8beac2 | ||
|
|
86dce76cab | ||
|
|
51d2fbb433 | ||
|
|
07fd93af8f | ||
|
|
66fe4061df | ||
|
|
f442c0518f | ||
|
|
2b5f356bb5 | ||
|
|
65e96502c4 | ||
|
|
1e8465b1c0 | ||
|
|
c8d8ff31e8 | ||
|
|
4de393ada1 | ||
|
|
ccdc2376cd | ||
|
|
42c1a071a8 | ||
|
|
638a2a8025 | ||
|
|
3fb1dd5f63 | ||
|
|
0c40012d5e | ||
|
|
7706aaa651 | ||
|
|
fa3443dafb | ||
|
|
4576b81301 | ||
|
|
c6e47cc65b | ||
|
|
14cc6cd3e8 | ||
|
|
ba3e5760f4 | ||
|
|
324921a8c3 | ||
|
|
b6a75bf8f9 | ||
|
|
c46c9ff94a | ||
|
|
ca5af38ffc | ||
|
|
633b639cab | ||
|
|
14414b9675 | ||
|
|
b9fcf044a9 | ||
|
|
79bdb29fa7 | ||
|
|
d86cb18515 | ||
|
|
340403656c | ||
|
|
feffc3025c | ||
|
|
58ab43cd09 | ||
|
|
e065be37d9 | ||
|
|
5fd255969c | ||
|
|
8568cd0909 | ||
|
|
43a176796d | ||
|
|
d6f4e1ee92 | ||
|
|
3747d22773 | ||
|
|
6ecf6302c4 | ||
|
|
730f7cf415 | ||
|
|
ba119007ff | ||
|
|
16882fee61 | ||
|
|
3869003cf4 | ||
|
|
2d93f048a4 | ||
|
|
e358c02f1f | ||
|
|
20d39b6627 | ||
|
|
e07c787b0f | ||
|
|
a1cee2012b | ||
|
|
204231b24f | ||
|
|
e604f4c8a2 | ||
|
|
86ef716a92 | ||
|
|
a0e8757dd1 | ||
|
|
9907009af6 | ||
|
|
60fc7ccd1d | ||
|
|
4678f71799 | ||
|
|
74503e9e0c | ||
|
|
18314d09f9 | ||
|
|
7ab5804682 | ||
|
|
69639c8ad2 | ||
|
|
a9a71d182d | ||
|
|
a84bf967e1 | ||
|
|
eee879eed4 | ||
|
|
a6547d63ac | ||
|
|
afa20b57a4 | ||
|
|
7fcac3aaf1 | ||
|
|
6c058f93d5 | ||
|
|
0b894ffaf3 | ||
|
|
641fc76e49 | ||
|
|
02d065778c | ||
|
|
3f26bc0103 | ||
|
|
811089868d | ||
|
|
d8e0d86084 | ||
|
|
ee0eeec08f | ||
|
|
8c5c166109 | ||
|
|
5e777a97d2 | ||
|
|
91c9c73d4a | ||
|
|
42609ad9fc | ||
|
|
3967525190 | ||
|
|
ebcb16a572 | ||
|
|
5f8fe9ae56 | ||
|
|
5750afb4f6 | ||
|
|
78344279d3 | ||
|
|
f715f77848 | ||
|
|
fb297704b3 | ||
|
|
0735d4f704 | ||
|
|
1969d860c7 | ||
|
|
a2918ae8a4 | ||
|
|
265e152c18 | ||
|
|
3c83b59b53 | ||
|
|
a3cecb852c | ||
|
|
2f28e6b487 | ||
|
|
ab6b07e422 | ||
|
|
6b3ba37243 | ||
|
|
0462597876 | ||
|
|
0fcde2806d | ||
|
|
471c4513bb | ||
|
|
cdf8d29fb7 | ||
|
|
1122d18526 | ||
|
|
49c80d2d3f | ||
|
|
80acf58b43 | ||
|
|
1bdf9654d1 | ||
|
|
513a2d66bb | ||
|
|
89070e1f40 | ||
|
|
15763dd55b | ||
|
|
3a32e88d5c | ||
|
|
31c424bd72 | ||
|
|
4f38236a00 | ||
|
|
a461577ee2 | ||
|
|
c38dfb6007 | ||
|
|
eba52bfd5b | ||
|
|
c74bc36178 | ||
|
|
4f2179287e | ||
|
|
a19b33c85e | ||
|
|
73266054d1 | ||
|
|
7b8240d9b5 | ||
|
|
e861ab55a5 | ||
|
|
401ffa4ea9 | ||
|
|
f5ef025ecf | ||
|
|
1dfeeca01e | ||
|
|
6b25e603e0 | ||
|
|
d6b65490f4 | ||
|
|
969611cf79 | ||
|
|
6ba5bab3ff | ||
|
|
6054928fa4 | ||
|
|
cfbcf7e9b8 | ||
|
|
b9faa443bb | ||
|
|
5c3b9a2555 | ||
|
|
40c2e8636c | ||
|
|
07586f5d82 | ||
|
|
f3863b73ce | ||
|
|
6a9c648b62 | ||
|
|
9eaa66f063 | ||
|
|
d91253a95b | ||
|
|
bf7909123c | ||
|
|
bf739a9e9a | ||
|
|
7bb5b6adb7 | ||
|
|
05f38b096c | ||
|
|
294f9c2ff6 | ||
|
|
f71ec30ed0 | ||
|
|
4a5afc6301 | ||
|
|
eb75a96671 | ||
|
|
1757ad442f | ||
|
|
7ced8531c5 | ||
|
|
021eb1a7e6 | ||
|
|
5f52141a42 | ||
|
|
ca21c4859d | ||
|
|
d375c088b1 | ||
|
|
59ef869c33 | ||
|
|
da5d3ca42b | ||
|
|
7286ff4db8 | ||
|
|
c0808e8c9c | ||
|
|
2289034e45 | ||
|
|
6da9bae3eb | ||
|
|
58bac37ed7 | ||
|
|
d2723ddf61 | ||
|
|
59a75bb8d0 | ||
|
|
dbb2605042 | ||
|
|
98f4ab79bd | ||
|
|
c06b40fd51 | ||
|
|
9028ef7f5a | ||
|
|
83655d5532 | ||
|
|
6fc81424a0 | ||
|
|
ae34b0095d | ||
|
|
c691e4f9b3 | ||
|
|
b36f84ea08 | ||
|
|
2762593952 | ||
|
|
7ceb2ddd71 | ||
|
|
f55e8c100a | ||
|
|
dcbf357111 | ||
|
|
c02628f5bf | ||
|
|
2fe86b748e | ||
|
|
1c5361613c | ||
|
|
f1addbf9a0 | ||
|
|
af413a1b4b | ||
|
|
6d2bb71b86 | ||
|
|
a9f8d88a2f | ||
|
|
900957a9ff | ||
|
|
649d6a330b | ||
|
|
8c29347c26 | ||
|
|
4feb68923b | ||
|
|
cb7756d381 | ||
|
|
385bcfa59e | ||
|
|
28e097e001 | ||
|
|
8a1740bc38 | ||
|
|
a9e47a578d | ||
|
|
8479991b6c | ||
|
|
996821ff69 | ||
|
|
415f9dfcf3 | ||
|
|
cf70c65a95 | ||
|
|
3ed6b52a1e | ||
|
|
b0dfeec6f2 | ||
|
|
d7b21c213e | ||
|
|
1e065f0868 | ||
|
|
b64c4f3d53 | ||
|
|
686657a418 | ||
|
|
3826c2d2fe | ||
|
|
992706e954 | ||
|
|
ee5216ce3b | ||
|
|
825ac54a4c | ||
|
|
6054236213 | ||
|
|
96e30aa483 | ||
|
|
429aca55cf | ||
|
|
f6b7a3a1f1 | ||
|
|
59c7c7245a | ||
|
|
0515652f78 | ||
|
|
d59db82ead | ||
|
|
89c6d69b39 | ||
|
|
15834577d3 | ||
|
|
77fe3f3f7e | ||
|
|
67c4552504 | ||
|
|
7156bee58b | ||
|
|
b46949ae09 | ||
|
|
2fbfb16017 | ||
|
|
1564f881f4 | ||
|
|
aea4a01d81 | ||
|
|
f79dec5ee3 | ||
|
|
397c7a2406 | ||
|
|
f15069b97b | ||
|
|
c0eac7e217 | ||
|
|
3d15e35f6c | ||
|
|
581f59c8e5 | ||
|
|
e8fc7cc7f8 | ||
|
|
5058e18138 | ||
|
|
9ddb2466ff | ||
|
|
fbf83fa71e | ||
|
|
42a62ba874 | ||
|
|
1a4ff29297 | ||
|
|
7db7a11787 | ||
|
|
4989a030d5 | ||
|
|
c0095bd98f | ||
|
|
12e8e01ca7 | ||
|
|
18c376deff | ||
|
|
e52da0088d | ||
|
|
3483c4736c | ||
|
|
26493c0104 | ||
|
|
21eba602c3 | ||
|
|
5e5f1b8d99 | ||
|
|
83f0949690 | ||
|
|
a23ac27fba | ||
|
|
6bfe915614 | ||
|
|
5b00e95255 | ||
|
|
055b70d45b | ||
|
|
4061bfb182 | ||
|
|
566e27d698 | ||
|
|
ef57dea866 | ||
|
|
cd86c34b90 | ||
|
|
d712f6875b | ||
|
|
f3808e0ba4 | ||
|
|
12dfcd76aa | ||
|
|
0e4319ff2e | ||
|
|
250199d996 | ||
|
|
585fe5dec9 | ||
|
|
9a05a392c1 | ||
|
|
4e890dd569 | ||
|
|
fd7354d930 | ||
|
|
f85c62c878 | ||
|
|
15d4da9b81 | ||
|
|
724b0c4936 | ||
|
|
37418047a0 | ||
|
|
93de082b06 | ||
|
|
3335298250 | ||
|
|
b6d2846ead | ||
|
|
1ddd15306d | ||
|
|
2505e30f86 | ||
|
|
a23c147125 | ||
|
|
ca6ff84ddb | ||
|
|
d3da956401 | ||
|
|
d7b759c534 | ||
|
|
761bafad83 | ||
|
|
2cac11fdda | ||
|
|
52f0d5242a | ||
|
|
827308f691 | ||
|
|
ee9a7c7ddb | ||
|
|
26ed7c3356 | ||
|
|
26c7d0f2cb | ||
|
|
8c25937f20 | ||
|
|
528d2cb071 | ||
|
|
9eb486f6e1 | ||
|
|
da34ad6023 | ||
|
|
af012c773c | ||
|
|
ed029dbd89 | ||
|
|
72e0c17ebf | ||
|
|
a1cfbf8f68 | ||
|
|
4c29cbabd5 | ||
|
|
9a9a98957d | ||
|
|
9961411435 | ||
|
|
8d84a51dc6 | ||
|
|
53eb92c262 | ||
|
|
16db0c7c0b | ||
|
|
f945360437 | ||
|
|
07b692e330 | ||
|
|
6d3a52e32b | ||
|
|
48b9097c2c | ||
|
|
47b0d287bb | ||
|
|
5aa30f2b05 | ||
|
|
6dfab0ae3c | ||
|
|
82fdd74be7 | ||
|
|
ccddb1ebdc | ||
|
|
f13b7be3d9 | ||
|
|
c2a8b432d8 | ||
|
|
bd19d3549b | ||
|
|
00b8115e7c | ||
|
|
e2613d2f31 | ||
|
|
f34fb53119 | ||
|
|
8f32267340 | ||
|
|
52a13dae27 | ||
|
|
c2d9631efd | ||
|
|
30b632fc19 | ||
|
|
c3406112cd | ||
|
|
822c3da3ba | ||
|
|
cc3988be24 | ||
|
|
bf1fc1c157 | ||
|
|
95ccb528e1 | ||
|
|
a0eb5b5d06 | ||
|
|
7ae7ecbd0b | ||
|
|
ca35772db9 | ||
|
|
13bce53249 | ||
|
|
4dce812cf9 | ||
|
|
5ad124f39d | ||
|
|
bee384defd | ||
|
|
7a654caf2a | ||
|
|
47929e9ee0 | ||
|
|
e33b900cff | ||
|
|
6d7fc2f689 | ||
|
|
1662a8bbc0 | ||
|
|
b22822f229 | ||
|
|
509e903800 | ||
|
|
128ecb425d | ||
|
|
092f195182 | ||
|
|
44b849ae24 | ||
|
|
284de30bb8 | ||
|
|
3fade684d5 | ||
|
|
d5ded11050 | ||
|
|
b2357ec8f6 | ||
|
|
4042e616da | ||
|
|
d72a207b36 | ||
|
|
e052cd05bb | ||
|
|
6000fa47f7 | ||
|
|
d5b6ef368a | ||
|
|
8bb26eb39c | ||
|
|
e80610d6fd | ||
|
|
882bd68036 | ||
|
|
7743aee1f5 | ||
|
|
a3990adb39 | ||
|
|
8d9cbab79e | ||
|
|
26c95dfad6 | ||
|
|
9e6783c1d5 | ||
|
|
ac769c109a | ||
|
|
e0f9809693 | ||
|
|
63cf8aa437 | ||
|
|
b29c5a9602 | ||
|
|
472b6ceb77 | ||
|
|
19fb0deb2f | ||
|
|
bc7d106c9f | ||
|
|
63f777d553 | ||
|
|
73bedf3981 | ||
|
|
6fe01721e7 | ||
|
|
d6f059cc43 | ||
|
|
ca02f7606b | ||
|
|
2fcccbc310 | ||
|
|
5e2d696260 | ||
|
|
d60244c0da | ||
|
|
d72b27543b | ||
|
|
dfe96c3eca | ||
|
|
994be53ae4 | ||
|
|
5b684b6c75 |
10
.github/ISSUE_TEMPLATE/bug_report.md
vendored
10
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -13,20 +13,20 @@ assignees: Ralim
|
||||
**To Reproduce**
|
||||
<!-- Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
2. Click on '...'
|
||||
3. Scroll down to '...'
|
||||
4. See error -->
|
||||
|
||||
**Expected behavior**
|
||||
<!-- A clear and concise description of what you expected to happen. -->
|
||||
|
||||
|
||||
**Details on your device:**
|
||||
<!-- You can get these from the debug menu by holding the rear button down and then using the front one to cycle through-->
|
||||
**Details of your device:**
|
||||
<!-- You can get these from the debug menu by holding the rear button down and then using the front one to cycle through -->
|
||||
- Device: [e.g. TS80/Pinecil etc]
|
||||
- Release: [eg 2.15.40087E6]
|
||||
- Power adapter being used:
|
||||
- If this is an acceleromter related issue, please include its model number here:
|
||||
- If this is an accelerometer related issue, please include its model number here:
|
||||
|
||||
**Additional context**
|
||||
<!-- Add any other context about the problem here. -->
|
||||
|
||||
124
.github/workflows/push.yml
vendored
124
.github/workflows/push.yml
vendored
@@ -5,31 +5,26 @@ on: [push, pull_request]
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-20.04
|
||||
container:
|
||||
image: alpine:3.16
|
||||
strategy:
|
||||
matrix:
|
||||
model: ["TS100", "TS80", "TS80P", "Pinecil", "MHP30"]
|
||||
fail-fast: true
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install dependencies (apk)
|
||||
run: apk add --no-cache gcc-riscv-none-elf gcc-arm-none-eabi newlib-riscv-none-elf newlib-arm-none-eabi findutils python3 py3-pip make git bash
|
||||
|
||||
- name: Install dependencies (python)
|
||||
run: python3 -m pip install bdflib
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: chmod
|
||||
run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
|
||||
|
||||
- name: Cached compiler source files
|
||||
uses: actions/cache@v2.1.6
|
||||
env:
|
||||
cache-name: cache-compilers
|
||||
with:
|
||||
path: /build/cache
|
||||
key: ${{ runner.os }}-build-${{ env.cache-name }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-
|
||||
|
||||
- name: setup
|
||||
run: ./setup.sh
|
||||
- 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 }}
|
||||
run: cd source && ./build.sh -m ${{ matrix.model }}
|
||||
@@ -40,7 +35,7 @@ jobs:
|
||||
cp LICENSE_RELEASE.md source/Hexfile/LICENSE_RELEASE.md
|
||||
|
||||
- name: Archive ${{ matrix.model }} artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.model }}
|
||||
path: |
|
||||
@@ -50,33 +45,36 @@ jobs:
|
||||
source/Hexfile/LICENSE_RELEASE.md
|
||||
if-no-files-found: error
|
||||
|
||||
- name: Generate json index file
|
||||
run: cd source && python3 metadata.py ${{ matrix.model }}.json
|
||||
|
||||
- name: Archive ${{ matrix.model }} index file
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: metadata
|
||||
path: source/Hexfile/${{ matrix.model }}.json
|
||||
|
||||
build_multi-lang:
|
||||
runs-on: ubuntu-20.04
|
||||
container:
|
||||
image: alpine:3.16
|
||||
strategy:
|
||||
matrix:
|
||||
model: ["Pinecil"]
|
||||
fail-fast: true
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install dependencies (apk)
|
||||
run: apk add --no-cache gcc-riscv-none-elf gcc-arm-none-eabi newlib-riscv-none-elf newlib-arm-none-eabi findutils python3 py3-pip make git bash musl-dev
|
||||
- name: Install dependencies (python)
|
||||
run: python3 -m pip install bdflib
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: chmod
|
||||
run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
|
||||
|
||||
- name: Cached compiler source files
|
||||
uses: actions/cache@v2.1.6
|
||||
env:
|
||||
cache-name: cache-compilers
|
||||
with:
|
||||
path: /build/cache
|
||||
key: ${{ runner.os }}-build-${{ env.cache-name }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-
|
||||
|
||||
- name: setup
|
||||
run: ./setup.sh
|
||||
- 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 }}
|
||||
run: cd source && make -j$(nproc) model="${{ matrix.model }}" firmware-multi_compressed_European firmware-multi_compressed_Bulgarian+Russian+Serbian+Ukrainian firmware-multi_Chinese+Japanese
|
||||
@@ -87,7 +85,7 @@ jobs:
|
||||
cp LICENSE_RELEASE.md source/Hexfile/LICENSE_RELEASE.md
|
||||
|
||||
- name: Archive ${{ matrix.model }} artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.model }}_multi-lang
|
||||
path: |
|
||||
@@ -97,15 +95,30 @@ jobs:
|
||||
source/Hexfile/LICENSE_RELEASE.md
|
||||
if-no-files-found: error
|
||||
|
||||
- name: Generate json index file
|
||||
run: cd source && python3 metadata.py Pinecil_multi-lang.json
|
||||
|
||||
- name: Archive ${{ matrix.model }} index file
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: metadata
|
||||
path: source/Hexfile/Pinecil_multi-lang.json
|
||||
|
||||
tests:
|
||||
runs-on: ubuntu-20.04
|
||||
container:
|
||||
image: alpine:3.16
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: deps
|
||||
run: apk add --no-cache python3 py3-pip make git bash findutils gcc musl-dev
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Setup
|
||||
run: sudo apt-get update && sudo apt-get install -y python3 && pip3 install bdflib
|
||||
- name: install black
|
||||
run: python3 -m pip install bdflib
|
||||
|
||||
- name: Run python tests
|
||||
run: cd Translations && chmod +x make_translation_test.py && ./make_translation_test.py
|
||||
@@ -120,28 +133,20 @@ jobs:
|
||||
|
||||
check_formatting:
|
||||
runs-on: ubuntu-20.04
|
||||
container:
|
||||
image: alpine:3.16
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: deps
|
||||
run: apk add --no-cache python3 py3-pip make git
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: chmod
|
||||
run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
|
||||
- name: install black
|
||||
run: python3 -m pip install bdflib black flake8
|
||||
|
||||
- name: Cached compiler source files
|
||||
uses: actions/cache@v2.1.6
|
||||
env:
|
||||
cache-name: cache-compilers
|
||||
with:
|
||||
# we deliberately persist a cache folder forwards
|
||||
path: /build/cache
|
||||
key: ${{ runner.os }}-build-${{ env.cache-name }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-
|
||||
|
||||
- name: setup
|
||||
run: sudo apt-get update && sudo apt-get install -y make clang git python3 python3-pip && python3 -m pip install bdflib black flake8
|
||||
- name: Check formatting with clang-format
|
||||
run: cd source && make clean && make check-style
|
||||
|
||||
@@ -150,3 +155,16 @@ jobs:
|
||||
|
||||
- name: Check python with flake8
|
||||
run: flake8 Translations
|
||||
|
||||
shellcheck:
|
||||
name: runner / shellcheck
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: shellcheck
|
||||
uses: reviewdog/action-shellcheck@v1
|
||||
with:
|
||||
github_token: ${{ secrets.github_token }}
|
||||
reporter: github-pr-review # Change reporter.
|
||||
exclude: "./.git/*" # Optional.
|
||||
check_all_files_with_shebangs: "false" # Optional.
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -176,3 +176,6 @@ fabric.properties
|
||||
|
||||
CoreCompileInputs.cache
|
||||
.vscode/settings.json
|
||||
source/compile_commands.json
|
||||
source/build/
|
||||
source/null.cpp
|
||||
|
||||
Binary file not shown.
@@ -1,258 +0,0 @@
|
||||
:020000040800F2
|
||||
:10F8000055AA0DF080002A540215808180808080E6
|
||||
:10F810008080808080808080008000000000000068
|
||||
:10F82000408040C020C03030905010F010101010B8
|
||||
:10F830001010101010101010F010101010101010E8
|
||||
:10F8400010101010D09050D0505050505050505078
|
||||
:10F8500050505050D0D0D0D0D0D0109010101010A8
|
||||
:10F86000101000E002000502050508080808080855
|
||||
:10F87000080808080808080805080505050507051B
|
||||
:10F880001008101F201F62604850407F40404040D9
|
||||
:10F8900040404040404040407F4047404747424012
|
||||
:10F8A000424747405F4F505F50505050505050506B
|
||||
:10F8B000505050505F5F58585F58474F4740424044
|
||||
:10F8C0004040003F00000000000000000000000079
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF080002A540215808180808080E6
|
||||
:10F810008080808080808080008000000000000068
|
||||
:10F82000408040C020C03030905010F010101010B8
|
||||
:10F830001010101010101010F010101010101010E8
|
||||
:10F8400010101010D09050D0505050505050505078
|
||||
:10F8500050505050D0D0D0D0D0D0109010101010A8
|
||||
:10F86000101000E002000502050508080808080855
|
||||
:10F87000080808080808080805080505050507051B
|
||||
:10F880001008101F201F62604850407F40404040D9
|
||||
:10F8900040404040404040407F4047404747424012
|
||||
:10F8A000424747405F4F505F50505050505050506B
|
||||
:10F8B000505050505F5F58585F58474F4740424044
|
||||
:10F8C0004040003F00000000000000000000000079
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF080002A540215808180808080E6
|
||||
:10F810008080808080808080008000000000000068
|
||||
:10F82000408040C020C03030905010F010101010B8
|
||||
:10F830001010101010101010F010101010101010E8
|
||||
:10F8400010101010D09050D0505050505050505078
|
||||
:10F8500050505050D0D0D0D0D0D0109010101010A8
|
||||
:10F86000101000E002000502050508080808080855
|
||||
:10F87000080808080808080805080505050507051B
|
||||
:10F880001008101F201F62604850407F40404040D9
|
||||
:10F8900040404040404040407F4047404747424012
|
||||
:10F8A000424747405F4F505F50505050505050506B
|
||||
:10F8B000505050505F5F58585F58474F4740424044
|
||||
:10F8C0004040003F00000000000000000000000079
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF080002A540215808180808080E6
|
||||
:10F810008080808080808080008000000000000068
|
||||
:10F82000408040C020C03030905010F010101010B8
|
||||
:10F830001010101010101010F010101010101010E8
|
||||
:10F8400010101010D09050D0505050505050505078
|
||||
:10F8500050505050D0D0D0D0D0D0109010101010A8
|
||||
:10F86000101000E002000502050508080808080855
|
||||
:10F87000080808080808080805080505050507051B
|
||||
:10F880001008101F201F62604850407F40404040D9
|
||||
:10F8900040404040404040407F4047404747424012
|
||||
:10F8A000424747405F4F505F50505050505050506B
|
||||
:10F8B000505050505F5F58585F58474F4740424044
|
||||
:10F8C0004040003F00000000000000000000000079
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:00000001FF
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.2 KiB |
@@ -1,258 +0,0 @@
|
||||
:020000040800F2
|
||||
:10F8000055AA0DF080002A54821580818080808066
|
||||
:10F8100080808080808080808080808000000000E8
|
||||
:10F82000000000004080402020C020201010080868
|
||||
:10F8300008080C080C0C0C0C080808080C0C0C0C24
|
||||
:10F84000E80CA8A8A828E8A8C808A828A8A848A834
|
||||
:10F850008808284808E828C828A80CCC28CC28A85C
|
||||
:10F8600008C800F80200050208050808080808088A
|
||||
:10F8700008080A080A090A090A0908090505050508
|
||||
:10F880000505050510081020201F4040404020407D
|
||||
:10F890002020202020202020202020202020202068
|
||||
:10F8A00020202F202F28202025202A2A2A2A2728F6
|
||||
:10F8B0002120282F202F2827282B20272827282BD6
|
||||
:10F8C0002027001F000000000000000000000000D2
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF080002A54821580818080808066
|
||||
:10F8100080808080808080808080808000000000E8
|
||||
:10F82000000000004080402020C020201010080868
|
||||
:10F8300008080C080C0C0C0C080808080C0C0C0C24
|
||||
:10F84000E80CA8A8A828E8A8C808A828A8A848A834
|
||||
:10F850008808284808E828C828A80CCC28CC28A85C
|
||||
:10F8600008C800F80200050208050808080808088A
|
||||
:10F8700008080A080A090A090A0908090505050508
|
||||
:10F880000505050510081020201F4040404020407D
|
||||
:10F890002020202020202020202020202020202068
|
||||
:10F8A00020202F202F28202025202A2A2A2A2728F6
|
||||
:10F8B0002120282F202F2827282B20272827282BD6
|
||||
:10F8C0002027001F000000000000000000000000D2
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF080002A54821580818080808066
|
||||
:10F8100080808080808080808080808000000000E8
|
||||
:10F82000000000004080402020C020201010080868
|
||||
:10F8300008080C080C0C0C0C080808080C0C0C0C24
|
||||
:10F84000E80CA8A8A828E8A8C808A828A8A848A834
|
||||
:10F850008808284808E828C828A80CCC28CC28A85C
|
||||
:10F8600008C800F80200050208050808080808088A
|
||||
:10F8700008080A080A090A090A0908090505050508
|
||||
:10F880000505050510081020201F4040404020407D
|
||||
:10F890002020202020202020202020202020202068
|
||||
:10F8A00020202F202F28202025202A2A2A2A2728F6
|
||||
:10F8B0002120282F202F2827282B20272827282BD6
|
||||
:10F8C0002027001F000000000000000000000000D2
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF080002A54821580818080808066
|
||||
:10F8100080808080808080808080808000000000E8
|
||||
:10F82000000000004080402020C020201010080868
|
||||
:10F8300008080C080C0C0C0C080808080C0C0C0C24
|
||||
:10F84000E80CA8A8A828E8A8C808A828A8A848A834
|
||||
:10F850008808284808E828C828A80CCC28CC28A85C
|
||||
:10F8600008C800F80200050208050808080808088A
|
||||
:10F8700008080A080A090A090A0908090505050508
|
||||
:10F880000505050510081020201F4040404020407D
|
||||
:10F890002020202020202020202020202020202068
|
||||
:10F8A00020202F202F28202025202A2A2A2A2728F6
|
||||
:10F8B0002120282F202F2827282B20272827282BD6
|
||||
:10F8C0002027001F000000000000000000000000D2
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:00000001FF
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 408 B |
@@ -1,258 +0,0 @@
|
||||
:020000040800F2
|
||||
:10F8000055AA0DF0F800E808A8A8AC28ECACC80888
|
||||
:10F81000A828A8A848A88808284808E828C828A828
|
||||
:10F8200008C828C828A80CC80C0C0C0C0808080824
|
||||
:10F830000C0C0C0C080C0808080810102020C02024
|
||||
:10F840002040804000000000000000008080808098
|
||||
:10F850008080808080808080808080808180158210
|
||||
:10F86000542A00801F0020202F202F282020252010
|
||||
:10F870002A2A2A2A27282120282F202F2827282B08
|
||||
:10F8800020272827282B2027202020202020202048
|
||||
:10F8900020202020202020204020404040401F20C9
|
||||
:10F8A0002010081005050505050505050908090AC4
|
||||
:10F8B000090A090A080A08080808080808080508C3
|
||||
:10F8C000020500020000000000000000000000002F
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF0F800E808A8A8AC28ECACC80888
|
||||
:10F81000A828A8A848A88808284808E828C828A828
|
||||
:10F8200008C828C828A80CC80C0C0C0C0808080824
|
||||
:10F830000C0C0C0C080C0808080810102020C02024
|
||||
:10F840002040804000000000000000008080808098
|
||||
:10F850008080808080808080808080808180158210
|
||||
:10F86000542A00801F0020202F202F282020252010
|
||||
:10F870002A2A2A2A27282120282F202F2827282B08
|
||||
:10F8800020272827282B2027202020202020202048
|
||||
:10F8900020202020202020204020404040401F20C9
|
||||
:10F8A0002010081005050505050505050908090AC4
|
||||
:10F8B000090A090A080A08080808080808080508C3
|
||||
:10F8C000020500020000000000000000000000002F
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF0F800E808A8A8AC28ECACC80888
|
||||
:10F81000A828A8A848A88808284808E828C828A828
|
||||
:10F8200008C828C828A80CC80C0C0C0C0808080824
|
||||
:10F830000C0C0C0C080C0808080810102020C02024
|
||||
:10F840002040804000000000000000008080808098
|
||||
:10F850008080808080808080808080808180158210
|
||||
:10F86000542A00801F0020202F202F282020252010
|
||||
:10F870002A2A2A2A27282120282F202F2827282B08
|
||||
:10F8800020272827282B2027202020202020202048
|
||||
:10F8900020202020202020204020404040401F20C9
|
||||
:10F8A0002010081005050505050505050908090AC4
|
||||
:10F8B000090A090A080A08080808080808080508C3
|
||||
:10F8C000020500020000000000000000000000002F
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF0F800E808A8A8AC28ECACC80888
|
||||
:10F81000A828A8A848A88808284808E828C828A828
|
||||
:10F8200008C828C828A80CC80C0C0C0C0808080824
|
||||
:10F830000C0C0C0C080C0808080810102020C02024
|
||||
:10F840002040804000000000000000008080808098
|
||||
:10F850008080808080808080808080808180158210
|
||||
:10F86000542A00801F0020202F202F282020252010
|
||||
:10F870002A2A2A2A27282120282F202F2827282B08
|
||||
:10F8800020272827282B2027202020202020202048
|
||||
:10F8900020202020202020204020404040401F20C9
|
||||
:10F8A0002010081005050505050505050908090AC4
|
||||
:10F8B000090A090A080A08080808080808080508C3
|
||||
:10F8C000020500020000000000000000000000002F
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:00000001FF
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.8 KiB |
@@ -1,258 +0,0 @@
|
||||
:020000040800F2
|
||||
:10F8000055AA0DF07FFFD5AB7DEA7F7E7F7FFF7F1E
|
||||
:10F81000FFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFF78
|
||||
:10F820007F7FBFBFDFBFEFDF0FEFEF0FAFAFAFAF38
|
||||
:10F83000EFEFAFAFAFAFAFAF0FEF6FEFAFAFAFAFB8
|
||||
:10F84000AFAF2FAFAFAFAFAFAFAF6FAF6FEFAFAF88
|
||||
:10F85000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFB8
|
||||
:10F86000EF6FFF1FFDFFFAFDF7FAF7F7F7F7FAF76B
|
||||
:10F87000FAFAFAFAFAFAFAFAFAFAFAFAFAFAF0FAF2
|
||||
:10F88000F7F7EFEFDFEFBFDF80BFBF80AAAAAAAA1A
|
||||
:10F89000BFBFAAAAAAAAAAAA80BFB0BFADAFAAAA90
|
||||
:10F8A000ADAFA2AAADAAAAAFADAAB0AFB0BFAFAF7D
|
||||
:10F8B000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF58
|
||||
:10F8C000BFB0FFC00000000000000000000000000A
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF07FFFD5AB7DEA7F7E7F7FFF7F1E
|
||||
:10F81000FFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFF78
|
||||
:10F820007F7FBFBFDFBFEFDF0FEFEF0FAFAFAFAF38
|
||||
:10F83000EFEFAFAFAFAFAFAF0FEF6FEFAFAFAFAFB8
|
||||
:10F84000AFAF2FAFAFAFAFAFAFAF6FAF6FEFAFAF88
|
||||
:10F85000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFB8
|
||||
:10F86000EF6FFF1FFDFFFAFDF7FAF7F7F7F7FAF76B
|
||||
:10F87000FAFAFAFAFAFAFAFAFAFAFAFAFAFAF0FAF2
|
||||
:10F88000F7F7EFEFDFEFBFDF80BFBF80AAAAAAAA1A
|
||||
:10F89000BFBFAAAAAAAAAAAA80BFB0BFADAFAAAA90
|
||||
:10F8A000ADAFA2AAADAAAAAFADAAB0AFB0BFAFAF7D
|
||||
:10F8B000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF58
|
||||
:10F8C000BFB0FFC00000000000000000000000000A
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF07FFFD5AB7DEA7F7E7F7FFF7F1E
|
||||
:10F81000FFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFF78
|
||||
:10F820007F7FBFBFDFBFEFDF0FEFEF0FAFAFAFAF38
|
||||
:10F83000EFEFAFAFAFAFAFAF0FEF6FEFAFAFAFAFB8
|
||||
:10F84000AFAF2FAFAFAFAFAFAFAF6FAF6FEFAFAF88
|
||||
:10F85000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFB8
|
||||
:10F86000EF6FFF1FFDFFFAFDF7FAF7F7F7F7FAF76B
|
||||
:10F87000FAFAFAFAFAFAFAFAFAFAFAFAFAFAF0FAF2
|
||||
:10F88000F7F7EFEFDFEFBFDF80BFBF80AAAAAAAA1A
|
||||
:10F89000BFBFAAAAAAAAAAAA80BFB0BFADAFAAAA90
|
||||
:10F8A000ADAFA2AAADAAAAAFADAAB0AFB0BFAFAF7D
|
||||
:10F8B000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF58
|
||||
:10F8C000BFB0FFC00000000000000000000000000A
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000055AA0DF07FFFD5AB7DEA7F7E7F7FFF7F1E
|
||||
:10F81000FFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFF78
|
||||
:10F820007F7FBFBFDFBFEFDF0FEFEF0FAFAFAFAF38
|
||||
:10F83000EFEFAFAFAFAFAFAF0FEF6FEFAFAFAFAFB8
|
||||
:10F84000AFAF2FAFAFAFAFAFAFAF6FAF6FEFAFAF88
|
||||
:10F85000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAFB8
|
||||
:10F86000EF6FFF1FFDFFFAFDF7FAF7F7F7F7FAF76B
|
||||
:10F87000FAFAFAFAFAFAFAFAFAFAFAFAFAFAF0FAF2
|
||||
:10F88000F7F7EFEFDFEFBFDF80BFBF80AAAAAAAA1A
|
||||
:10F89000BFBFAAAAAAAAAAAA80BFB0BFADAFAAAA90
|
||||
:10F8A000ADAFA2AAADAAAAAFADAAB0AFB0BFAFAF7D
|
||||
:10F8B000AFAFAFAFAFAFAFAFAFAFAFAFAFAFAFAF58
|
||||
:10F8C000BFB0FFC00000000000000000000000000A
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:00000001FF
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 231 B |
@@ -1,258 +0,0 @@
|
||||
:020000040800F2
|
||||
:10F8000000000000000000000000000000000000F8
|
||||
:10F8100000000000000000000000000000000000E8
|
||||
:10F8200000000000000000000000000000000000D8
|
||||
:10F8300000000000000000000000000000000000C8
|
||||
:10F8400000000000000000000000000000000000B8
|
||||
:10F8500000000000000000000000000000000000A8
|
||||
:10F860000000000000000000000000000000000098
|
||||
:10F870000000000000000000000000000000000088
|
||||
:10F880000000000000000000000000000000000078
|
||||
:10F890000000000000000000000000000000000068
|
||||
:10F8A0000000000000000000000000000000000058
|
||||
:10F8B0000000000000000000000000000000000048
|
||||
:10F8C0000000000000000000000000000000000038
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000000000000000000000000000000000000F8
|
||||
:10F8100000000000000000000000000000000000E8
|
||||
:10F8200000000000000000000000000000000000D8
|
||||
:10F8300000000000000000000000000000000000C8
|
||||
:10F8400000000000000000000000000000000000B8
|
||||
:10F8500000000000000000000000000000000000A8
|
||||
:10F860000000000000000000000000000000000098
|
||||
:10F870000000000000000000000000000000000088
|
||||
:10F880000000000000000000000000000000000078
|
||||
:10F890000000000000000000000000000000000068
|
||||
:10F8A0000000000000000000000000000000000058
|
||||
:10F8B0000000000000000000000000000000000048
|
||||
:10F8C0000000000000000000000000000000000038
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000000000000000000000000000000000000F8
|
||||
:10F8100000000000000000000000000000000000E8
|
||||
:10F8200000000000000000000000000000000000D8
|
||||
:10F8300000000000000000000000000000000000C8
|
||||
:10F8400000000000000000000000000000000000B8
|
||||
:10F8500000000000000000000000000000000000A8
|
||||
:10F860000000000000000000000000000000000098
|
||||
:10F870000000000000000000000000000000000088
|
||||
:10F880000000000000000000000000000000000078
|
||||
:10F890000000000000000000000000000000000068
|
||||
:10F8A0000000000000000000000000000000000058
|
||||
:10F8B0000000000000000000000000000000000048
|
||||
:10F8C0000000000000000000000000000000000038
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:10F8000000000000000000000000000000000000F8
|
||||
:10F8100000000000000000000000000000000000E8
|
||||
:10F8200000000000000000000000000000000000D8
|
||||
:10F8300000000000000000000000000000000000C8
|
||||
:10F8400000000000000000000000000000000000B8
|
||||
:10F8500000000000000000000000000000000000A8
|
||||
:10F860000000000000000000000000000000000098
|
||||
:10F870000000000000000000000000000000000088
|
||||
:10F880000000000000000000000000000000000078
|
||||
:10F890000000000000000000000000000000000068
|
||||
:10F8A0000000000000000000000000000000000058
|
||||
:10F8B0000000000000000000000000000000000048
|
||||
:10F8C0000000000000000000000000000000000038
|
||||
:10F8D0000000000000000000000000000000000028
|
||||
:10F8E0000000000000000000000000000000000018
|
||||
:10F8F0000000000000000000000000000000000008
|
||||
:10F9000000000000000000000000000000000000F7
|
||||
:10F9100000000000000000000000000000000000E7
|
||||
:10F9200000000000000000000000000000000000D7
|
||||
:10F9300000000000000000000000000000000000C7
|
||||
:10F9400000000000000000000000000000000000B7
|
||||
:10F9500000000000000000000000000000000000A7
|
||||
:10F960000000000000000000000000000000000097
|
||||
:10F970000000000000000000000000000000000087
|
||||
:10F980000000000000000000000000000000000077
|
||||
:10F990000000000000000000000000000000000067
|
||||
:10F9A0000000000000000000000000000000000057
|
||||
:10F9B0000000000000000000000000000000000047
|
||||
:10F9C0000000000000000000000000000000000037
|
||||
:10F9D0000000000000000000000000000000000027
|
||||
:10F9E0000000000000000000000000000000000017
|
||||
:10F9F0000000000000000000000000000000000007
|
||||
:10FA000000000000000000000000000000000000F6
|
||||
:10FA100000000000000000000000000000000000E6
|
||||
:10FA200000000000000000000000000000000000D6
|
||||
:10FA300000000000000000000000000000000000C6
|
||||
:10FA400000000000000000000000000000000000B6
|
||||
:10FA500000000000000000000000000000000000A6
|
||||
:10FA60000000000000000000000000000000000096
|
||||
:10FA70000000000000000000000000000000000086
|
||||
:10FA80000000000000000000000000000000000076
|
||||
:10FA90000000000000000000000000000000000066
|
||||
:10FAA0000000000000000000000000000000000056
|
||||
:10FAB0000000000000000000000000000000000046
|
||||
:10FAC0000000000000000000000000000000000036
|
||||
:10FAD0000000000000000000000000000000000026
|
||||
:10FAE0000000000000000000000000000000000016
|
||||
:10FAF0000000000000000000000000000000000006
|
||||
:10FB000000000000000000000000000000000000F5
|
||||
:10FB100000000000000000000000000000000000E5
|
||||
:10FB200000000000000000000000000000000000D5
|
||||
:10FB300000000000000000000000000000000000C5
|
||||
:10FB400000000000000000000000000000000000B5
|
||||
:10FB500000000000000000000000000000000000A5
|
||||
:10FB60000000000000000000000000000000000095
|
||||
:10FB70000000000000000000000000000000000085
|
||||
:10FB80000000000000000000000000000000000075
|
||||
:10FB90000000000000000000000000000000000065
|
||||
:10FBA0000000000000000000000000000000000055
|
||||
:10FBB0000000000000000000000000000000000045
|
||||
:10FBC0000000000000000000000000000000000035
|
||||
:10FBD0000000000000000000000000000000000025
|
||||
:10FBE0000000000000000000000000000000000015
|
||||
:10FBF0000000000000000000000000000000000005
|
||||
:00000001FF
|
||||
7
Bootup Logo/README.md
Normal file
7
Bootup Logo/README.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# Bootup logo's
|
||||
|
||||
IronOS supports both a bootup logo _AND_ bootup animations.
|
||||
|
||||
However, they are no longer included in this repo.
|
||||
|
||||
[Please read the docs](../Documentation/Logo.md)
|
||||
@@ -1,241 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# coding=utf-8
|
||||
from __future__ import division
|
||||
import os
|
||||
import sys
|
||||
|
||||
|
||||
try:
|
||||
from PIL import Image, ImageOps
|
||||
except ImportError as error:
|
||||
raise ImportError("{}: {} requres Python Imaging Library (PIL). "
|
||||
"Install with `pip` or OS-specific package "
|
||||
"management tool."
|
||||
.format(error, sys.argv[0]))
|
||||
|
||||
VERSION_STRING = '0.01'
|
||||
|
||||
LCD_WIDTH = 96
|
||||
LCD_HEIGHT = 16
|
||||
LCD_NUM_BYTES = LCD_WIDTH * LCD_HEIGHT // 8
|
||||
LCD_PADDED_SIZE = 1024
|
||||
|
||||
INTELHEX_DATA_RECORD = 0x00
|
||||
INTELHEX_END_OF_FILE_RECORD = 0x01
|
||||
INTELHEX_EXTENDED_LINEAR_ADDRESS_RECORD = 0x04
|
||||
INTELHEX_BYTES_PER_LINE = 16
|
||||
INTELHEX_MINIMUM_SIZE = 4096
|
||||
|
||||
|
||||
def split16(word):
|
||||
"""return high and low byte of 16-bit word value as tuple"""
|
||||
return (word >> 8) & 0xff, word & 0xff
|
||||
|
||||
|
||||
def intel_hex_line(record_type, offset, data):
|
||||
"""generate a line of data in Intel hex format"""
|
||||
# length, address offset, record type
|
||||
record_length = len(data)
|
||||
yield ':{:02X}{:04X}{:02X}'.format(record_length, offset, record_type)
|
||||
|
||||
# data
|
||||
for byte in data:
|
||||
yield "{:02X}".format(byte)
|
||||
|
||||
# compute and write checksum (now using unix style line endings for DFU3.45 compatibility
|
||||
yield "{:02X}\n".format((((sum(data, # sum data ...
|
||||
record_length # ... and other ...
|
||||
+ sum(split16(offset)) # ... fields ...
|
||||
+ record_type) # ... on line
|
||||
& 0xff) # low 8 bits
|
||||
^ 0xff) # two's ...
|
||||
+ 1) # ... complement
|
||||
& 0xff) # low 8 bits
|
||||
|
||||
|
||||
def intel_hex(file, bytes_, start_address=0x0):
|
||||
"""write block of data in Intel hex format"""
|
||||
def write(generator):
|
||||
file.write(''.join(generator))
|
||||
|
||||
if len(bytes_) % INTELHEX_BYTES_PER_LINE != 0:
|
||||
raise ValueError("Program error: Size of LCD data is not evenly divisible by {}"
|
||||
.format(INTELHEX_BYTES_PER_LINE))
|
||||
|
||||
address_lo = start_address & 0xffff
|
||||
address_hi = (start_address >> 16) & 0xffff
|
||||
|
||||
write(intel_hex_line(INTELHEX_EXTENDED_LINEAR_ADDRESS_RECORD, 0,
|
||||
split16(address_hi)))
|
||||
|
||||
size_written = 0
|
||||
while size_written < INTELHEX_MINIMUM_SIZE:
|
||||
offset = address_lo
|
||||
for line_start in range(0, len(bytes_), INTELHEX_BYTES_PER_LINE):
|
||||
write(intel_hex_line(INTELHEX_DATA_RECORD, offset,
|
||||
bytes_[line_start:line_start + INTELHEX_BYTES_PER_LINE]))
|
||||
size_written += INTELHEX_BYTES_PER_LINE
|
||||
if size_written >= INTELHEX_MINIMUM_SIZE:
|
||||
break
|
||||
offset += INTELHEX_BYTES_PER_LINE
|
||||
|
||||
write(intel_hex_line(INTELHEX_END_OF_FILE_RECORD, 0, ()))
|
||||
|
||||
|
||||
def img2hex(input_filename,
|
||||
output_file,
|
||||
preview_filename=None,
|
||||
threshold=128,
|
||||
dither=False,
|
||||
negative=False):
|
||||
"""
|
||||
Convert 'input_filename' image file into Intel hex format with data
|
||||
formatted for display on TS100 LCD and file object.
|
||||
Input image is converted from color or grayscale to black-and-white,
|
||||
and resized to fit TS100 LCD screen as necessary.
|
||||
Optionally write resized/thresholded/black-and-white preview image
|
||||
to file specified by name.
|
||||
Optional `threshold' argument 8 bit value; grayscale pixels greater than
|
||||
this become 1 (white) in output, less than become 0 (black).
|
||||
Unless optional `dither', in which case PIL grayscale-to-black/white
|
||||
dithering algorithm used.
|
||||
Optional `negative' inverts black/white regardless of input image type
|
||||
or other options.
|
||||
"""
|
||||
|
||||
try:
|
||||
image = Image.open(input_filename)
|
||||
except BaseException as e:
|
||||
raise IOError("error reading image file \"{}\": {}".format(input_filename, e))
|
||||
|
||||
# convert to luminance
|
||||
# do even if already black/white because PIL can't invert 1-bit so
|
||||
# can't just pass thru in case --negative flag
|
||||
# also resizing works better in luminance than black/white
|
||||
# also no information loss converting black/white to grayscale
|
||||
if image.mode != 'L':
|
||||
image = image.convert('L')
|
||||
|
||||
if image.size != (LCD_WIDTH, LCD_HEIGHT):
|
||||
image = image.resize((LCD_WIDTH, LCD_HEIGHT), Image.BICUBIC)
|
||||
|
||||
if negative:
|
||||
image = ImageOps.invert(image)
|
||||
threshold = 255 - threshold # have to invert threshold
|
||||
|
||||
if dither:
|
||||
image = image.convert('1')
|
||||
else:
|
||||
image = image.point(lambda pixel: 0 if pixel < threshold else 1, '1')
|
||||
|
||||
if preview_filename:
|
||||
image.save(preview_filename)
|
||||
|
||||
''' DEBUG
|
||||
for row in range(LCD_HEIGHT):
|
||||
for column in range(LCD_WIDTH):
|
||||
if image.getpixel((column, row)): sys.stderr.write('1')
|
||||
else: sys.stderr.write('0')
|
||||
sys.stderr.write('\n')
|
||||
'''
|
||||
|
||||
# pad to this size (also will be repeated in output Intel hex file)
|
||||
data = [0] * LCD_PADDED_SIZE
|
||||
|
||||
# magic/undocumented/required header in endian-reverse byte order
|
||||
data[0] = 0x55
|
||||
data[1] = 0xAA
|
||||
data[2] = 0x0D
|
||||
data[3] = 0xF0
|
||||
|
||||
# convert to TS100 LCD format
|
||||
for ndx in range(LCD_WIDTH * 16 // 8):
|
||||
bottom_half_offset = 0 if ndx < LCD_WIDTH else 8
|
||||
byte = 0
|
||||
for y in range(8):
|
||||
if image.getpixel((ndx % LCD_WIDTH, y + bottom_half_offset)):
|
||||
byte |= 1 << y
|
||||
# store in endian-reversed byte order
|
||||
data[4 + ndx + (1 if ndx % 2 == 0 else -1)] = byte
|
||||
|
||||
intel_hex(output_file, data, 0x0800F800)
|
||||
|
||||
|
||||
def parse_commandline():
|
||||
parser = argparse.ArgumentParser(
|
||||
formatter_class=argparse.ArgumentDefaultsHelpFormatter,
|
||||
description="Convert image file for display on TS100 LCD "
|
||||
"at startup")
|
||||
|
||||
def zero_to_255(text):
|
||||
value = int(text)
|
||||
if not 0 <= value <= 255:
|
||||
raise argparse.ArgumentTypeError("must be integer from 0 to 255 ")
|
||||
return value
|
||||
|
||||
parser.add_argument('input_filename',
|
||||
help="input image file")
|
||||
|
||||
parser.add_argument('output_filename',
|
||||
help="output Intel hex file")
|
||||
|
||||
parser.add_argument('-p', '--preview',
|
||||
help="filename of image preview (same data as "
|
||||
"Intel hex file, as will appear on TS100 LCD)")
|
||||
|
||||
parser.add_argument('-n', '--negative',
|
||||
action='store_true',
|
||||
help="photo negative: exchange black and white "
|
||||
"in output")
|
||||
|
||||
parser.add_argument('-t', '--threshold',
|
||||
type=zero_to_255,
|
||||
default=128,
|
||||
help="0 to 255: gray (or color converted to gray) "
|
||||
"above this becomes white, below becomes black; "
|
||||
"ignored if using --dither")
|
||||
|
||||
parser.add_argument('-d', '--dither',
|
||||
action='store_true',
|
||||
help="use dithering (speckling) to convert gray or "
|
||||
"color to black and white")
|
||||
|
||||
parser.add_argument('-f', '--force',
|
||||
action='store_true',
|
||||
help="force overwriting of existing files")
|
||||
|
||||
parser.add_argument('-v', '--version',
|
||||
action='version',
|
||||
version="%(prog)s version " + VERSION_STRING,
|
||||
help="print version info")
|
||||
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import argparse
|
||||
args = parse_commandline()
|
||||
|
||||
if os.path.exists(args.output_filename) and not args.force:
|
||||
sys.stderr.write("Won't overwrite existing file \"{}\" (use --force "
|
||||
"option to override)\n"
|
||||
.format(args.output_filename))
|
||||
sys.exit(1)
|
||||
|
||||
if args.preview and os.path.exists(args.preview) and not args.force:
|
||||
sys.stderr.write("Won't overwrite existing file \"{}\" (use --force "
|
||||
"option to override)\n"
|
||||
.format(args.preview))
|
||||
sys.exit(1)
|
||||
|
||||
try:
|
||||
with open(args.output_filename, 'w', newline='\r\n') as output:
|
||||
img2hex(args.input_filename,
|
||||
output,
|
||||
args.preview,
|
||||
args.threshold,
|
||||
args.dither,
|
||||
args.negative)
|
||||
except BaseException as error:
|
||||
sys.stderr.write("Error converting file: {}\n".format(error))
|
||||
sys.exit(1)
|
||||
40
Dockerfile
40
Dockerfile
@@ -1,31 +1,21 @@
|
||||
FROM ubuntu:20.04
|
||||
FROM alpine:3.16
|
||||
LABEL maintainer="Ben V. Brown <ralim@ralimtek.com>"
|
||||
|
||||
WORKDIR /build
|
||||
# Add extra mirrors for options
|
||||
RUN echo "deb mirror://mirrors.ubuntu.com/mirrors.txt focal main restricted universe multiverse" > /etc/apt/sources.list && \
|
||||
echo "deb mirror://mirrors.ubuntu.com/mirrors.txt focal-updates main restricted universe multiverse" >> /etc/apt/sources.list && \
|
||||
echo "deb mirror://mirrors.ubuntu.com/mirrors.txt focal-security main restricted universe multiverse" >> /etc/apt/sources.list && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y ca-certificates
|
||||
# Install dependencies to build the firmware
|
||||
RUN apt-get install -y \
|
||||
make \
|
||||
bzip2 \
|
||||
git \
|
||||
python3 \
|
||||
python3-pip \
|
||||
clang-format \
|
||||
dfu-util \
|
||||
wget --no-install-recommends && \
|
||||
apt-get clean
|
||||
RUN python3 -m pip install bdflib
|
||||
# Download the two compilers
|
||||
RUN wget -qO- "https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2" | tar -xj
|
||||
# This is the same as the one from Nuclei, just mirrored on Github as their download server is horrifically slow
|
||||
RUN wget -qO- "https://github.com/Ralim/nuclei-compiler/releases/download/2020.08/nuclei_riscv_newlibc_prebuilt_linux64_2020.08.tar.bz2" | tar -xj
|
||||
# Installing the two compilers, python3, python3 pip, clang format
|
||||
# Compilders ->gcc-* newlib-*
|
||||
# Python3 -> py*
|
||||
# Misc -> findutils make git
|
||||
# musl-dev is required for the multi lang firmwares
|
||||
# clang is required for clang-format (for dev)
|
||||
|
||||
RUN apk add --no-cache gcc-riscv-none-elf gcc-arm-none-eabi newlib-riscv-none-elf newlib-arm-none-eabi findutils python3 py3-pip make git musl-dev clang bash clang-extra-tools cmake
|
||||
|
||||
# Install Python3 packages
|
||||
|
||||
RUN python3 -m pip install bdflib black
|
||||
# Git trust
|
||||
RUN git config --global --add safe.directory /build/source
|
||||
|
||||
# Add compiler to the path
|
||||
ENV PATH "/build/gcc-arm-none-eabi-10-2020-q4-major/bin:$PATH"
|
||||
ENV PATH "/build/gcc/bin/:$PATH"
|
||||
COPY . /build/source
|
||||
COPY ./ci /build/ci
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Debugging Menu
|
||||
|
||||
In this firmware there is extra debugging information hidden under an extra menu.
|
||||
This is accessed by holding the rear (B) button on the iron while it is on the home screen.
|
||||
This is accessed by holding the rear (-/B) button on the iron while it is on the home screen.
|
||||
|
||||
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 exit, use the rear (B) button again.
|
||||
To move through the menu, use the front (+/A) button.
|
||||
To exit, use the rear (-/B) button again.
|
||||
|
||||
## Menu items
|
||||
|
||||
@@ -14,16 +14,16 @@ Items are shown in the menu on a single line, so they use short codes
|
||||
|
||||
### HW G
|
||||
|
||||
This indicates the High Water mark for the stack for the GUI thread. The smaller this number is, the less headroom we have in the stack.
|
||||
As this is a Highwater mater, you should only trust this once you have walked through all GUI options to "hit" the worst one.
|
||||
This indicates the high water mark for the stack for the GUI thread. The smaller this number is, the less headroom we have in the stack.
|
||||
As this is a high-water mater, you should only trust this once you have walked through all GUI options to "hit" the worst one.
|
||||
|
||||
### HW M
|
||||
|
||||
This indicates the High Water mark for the stack for the movement detection thread. The smaller this number is, the less headroom we have in the stack.
|
||||
This indicates the high water mark for the stack for the movement detection thread. The smaller this number is, the less headroom we have in the stack.
|
||||
|
||||
### HW P
|
||||
|
||||
This indicates the High Water mark for the stack for the PID thread. The smaller this number is, the less headroom we have in the stack.
|
||||
This indicates the high water mark for the stack for the PID thread. The smaller this number is, the less headroom we have in the stack.
|
||||
|
||||
### Time
|
||||
|
||||
@@ -31,28 +31,28 @@ This just shows how many deciseconds the unit has been powered for.
|
||||
|
||||
### 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 can be used for checking performance of the movement dection code.
|
||||
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 detection code.
|
||||
|
||||
### RTip
|
||||
|
||||
This is the raw tip reading in uV. This can be used when assessing the calibration routines for example.
|
||||
This is the raw tip reading in μV. This can be used when assessing the calibration routines for example.
|
||||
|
||||
### CTip
|
||||
|
||||
This is the tip temperature in deg C.
|
||||
This is the tip temperature in degrees Celsius.
|
||||
This can be used with RTip for assessing temperature processing performance.
|
||||
|
||||
### CHan
|
||||
|
||||
This is the handle temperature in C. This is used for cold junction compensation of the tip temp.
|
||||
This is shown in degrees C x10, so 200 == 20.0C
|
||||
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
|
||||
|
||||
### Vin
|
||||
### Vin
|
||||
|
||||
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.
|
||||
|
||||
@@ -64,16 +64,35 @@ This indicates the accelerometer that is fitted inside the unit.
|
||||
- None detected -> running in fallback without movement detection
|
||||
- Scanning -> Still searching I2C for one
|
||||
|
||||
### PWR
|
||||
### PWR
|
||||
|
||||
This indicates the current power source for the iron.
|
||||
This may change during power up as the sources are negotiated in turn.
|
||||
|
||||
- **DC** input (dumb)
|
||||
- **QC** input (We used QC2/3 negotiation for current supply)
|
||||
- **PD** input (We used the PD subsystem to negotiate for the current supply)
|
||||
- **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
|
||||
- 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).
|
||||
|
||||
### Max
|
||||
### Max
|
||||
|
||||
This indicates the max temp in C 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 indicates the max temperature in degrees Celsius that the system estimates it can measure the tip reliably to.
|
||||
This is dependent on a few factors including the handle temperature so it can move around during use.
|
||||
|
||||
### Hall
|
||||
|
||||
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.
|
||||
|
||||
# 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.
|
||||
|
||||
@@ -1,30 +1,104 @@
|
||||
# Development
|
||||
|
||||
Building this software can be performed two ways, using the STMCubeIDE or using command line tools.
|
||||
Building this software can be performed two ways: using the STM32CubeIDE or using command line tools.
|
||||
|
||||
## STM Cube IDE
|
||||
## STM32CubeIDE
|
||||
|
||||
The easiest way to start working using the STM Cube IDE is to create a new project for the STM32F103RCTx.
|
||||
Then once this is created remove the auto-generated source code.
|
||||
Next drag the contents of the `source` folder into the project and choose to link to files.
|
||||
You will need to update the build settings for include paths & point to the new `.ld` linker file
|
||||
The easiest way to start working with the STM32CubeIDE is to create a new project for the STM32F103RCTx.
|
||||
Once this is created, remove the auto-generated source code.
|
||||
Next, drag the contents of the `source` folder into the project and choose to link to files.
|
||||
You will need to update the build settings for include paths and point to the new `.ld` linker file.
|
||||
|
||||
## Developing with command line tools & building a release
|
||||
## Command line tools and building a release
|
||||
|
||||
In the `source` folder there is a makefile that can be used to build the repository using command line tools.
|
||||
when running the `make` command, specify which model of the device & the language you would like to use.
|
||||
In the `source` folder there is a `Makefile` that can be used to build the repository using command line tools.
|
||||
When running the `make` command, specify which model of the device and the language(s) you would like to use.
|
||||
|
||||
`make -j8 lang=EN model=TS80`
|
||||
### macOS
|
||||
|
||||
To build a release instead, run the build.sh script. This will update translations and also build every language for both TS100 and TS80 models.
|
||||
Use the following steps to set up a build environment for IronOS on the command line (in Terminal).
|
||||
|
||||
1. [Follow steps 1 – 3 here to install the toolchain](https://github.com/glegrain/STM32-with-macOS#0---installing-the-toolchain) needed to compile for STM32 microcontrollers.
|
||||
2. Install `python`:
|
||||
|
||||
```
|
||||
brew install python
|
||||
```
|
||||
|
||||
3. (Optional) Update `pip` so it doesn't warn you about being out-of-date:
|
||||
|
||||
```
|
||||
python3 -m pip install --upgrade pip
|
||||
```
|
||||
|
||||
4. Change to the `source` directory:
|
||||
|
||||
```
|
||||
cd source
|
||||
```
|
||||
|
||||
5. Create a Python virtual environment for IronOS named `ironos-venv` to keep your Python installation clean:
|
||||
|
||||
```
|
||||
python3 -m venv ironos-venv
|
||||
```
|
||||
|
||||
6. Activate the Python virtual environment:
|
||||
|
||||
```
|
||||
source ironos-venv/bin/activate
|
||||
```
|
||||
|
||||
7. Install the dependencies required to run `make-translation.py`:
|
||||
|
||||
```
|
||||
pip install bdflib
|
||||
```
|
||||
|
||||
8. All done! See some examples below for how you can build your own IronOS.
|
||||
|
||||
### Examples
|
||||
|
||||
To build a single language Simplified Chinese firmware for the TS80P with 8 simultaneous jobs:
|
||||
|
||||
```
|
||||
make -j8 model=TS80P firmware-ZH_CN
|
||||
```
|
||||
|
||||
To build a European multi-language firmware for the Pinecil with as many simultaneous jobs as there are logical processors on Linux:
|
||||
|
||||
```
|
||||
make -j$(nproc) model=Pinecil firmware-multi_European
|
||||
```
|
||||
|
||||
To build a Cyrillic compressed multi-language firmware for the Pinecil with as many simultaneous jobs as there are logical processors on macOS:
|
||||
|
||||
```
|
||||
make -j$(sysctl -n hw.logicalcpu) model=Pinecil firmware-multi_compressed_Bulgarian+Russian+Serbian+Ukrainian
|
||||
```
|
||||
|
||||
To build a custom multi-language firmware including English and Simplified Chinese for the TS80:
|
||||
|
||||
```
|
||||
make -j8 model=TS80 custom_multi_langs="EN ZH_CN" firmware-multi_Custom
|
||||
```
|
||||
|
||||
To build a custom compressed multi-language firmware including German, Spanish, and French for the TS100 (note if `model` is unspecified, it will default to `TS100`):
|
||||
|
||||
```
|
||||
make -j8 custom_multi_langs="DE ES FR" firmware-multi_compressed_Custom
|
||||
```
|
||||
|
||||
To build a release instead, run the `build.sh` script. This will update translations and also build every language for all device models. For macOS users, replace `make -j$(nproc)` in the script with `make -j$(sysctl -n hw.logicalcpu)` before running.
|
||||
|
||||
## Updating languages
|
||||
|
||||
To update the language translation files & associated font map, 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.
|
||||
|
||||
## Building Pinecil
|
||||
|
||||
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.
|
||||
If you _need_ an IDE I have used [Nuclei's IDE](https://nucleisys.com/download.php)
|
||||
And follow same idea as the STM Cube IDE notes above.
|
||||
I highly recommend using the command line tools and using Docker to run the compiler.
|
||||
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).
|
||||
Follow the same idea as the STM Cube IDE notes above.
|
||||
|
||||
@@ -2,11 +2,17 @@
|
||||
|
||||
## Downloading source file
|
||||
|
||||
In the development of this firmware, there are three _types_ of firmware released.
|
||||
These are the "Main" stable releases, which generally have high confidence in being bug free.
|
||||
Release candidates are released slightly more often, and these are generally perfectly fine for everyday use. These are released early to allow for translation checking and for wonderful people to help spot bugs and regressions.
|
||||
Finally, there are the "mainline" builds, which are built from the main git branch.
|
||||
These are built on every change and can be found on the Actions tab (see below).
|
||||
|
||||
### Main release
|
||||
|
||||
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.
|
||||
You then need to use the appropriate file type for your unit, in general Miniware irons are `.hex` and Pinecil is `.bin`.
|
||||
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`.
|
||||
Flash according to details below
|
||||
|
||||
### Bleeding edge / latest
|
||||
@@ -18,38 +24,38 @@ In general you probably want `master`.
|
||||
Once you click on a run, scroll down to the "Artifacts" section and then click on your model to download a zip file.
|
||||
Then this works the same as a production release (use the correct file).
|
||||
|
||||
## Miniware irons (TS100, TS80, TS80P)
|
||||
# Miniware devices (TS100, TS80, TS80P & MHP30)
|
||||
|
||||
This is completely safe, but if it goes wrong just put the .hex file from the [official website](http://www.miniware.com.cn/product-category/soldering-pen/electric-soldering-kit/) onto the unit and you're back to the old firmware. Downloads for the hex files to flash are available on the [releases page.](https://github.com/Ralim/IronOS/releases) The file you want is called _(MODEL)\_EN.hex_ unless you want the translations, they are (MODEL)\__language short name_.hex. Where (MODEL) is either TS100 or TS80.
|
||||
This is completely safe, but if it goes wrong just put the `.hex` file from the official website ([TS100](https://www.minidso.com/forum.php?mod=viewthread&tid=868&extra=page%3D1), [TS80](https://www.minidso.com/forum.php?mod=viewthread&tid=3202&extra=page%3D1), [TS80P](https://www.minidso.com/forum.php?mod=viewthread&tid=4070&extra=page%3D1) & [MHP30](https://www.minidso.com/forum.php?mod=viewthread&tid=4385&extra=page%3D1)) onto the unit and you're back to the old firmware. Downloads for the `.hex` files to flash are available on the [releases page.](https://github.com/Ralim/IronOS/releases) The file you want is called _(MODEL)\_EN.hex_ unless you want the translations, they are (MODEL)\__language short name_.hex. Where (MODEL) is either TS100 or TS80.
|
||||
|
||||
Officially the bootloader on the iron only works under Windows (use the built-in File Explorer, as alternative file managers or copy handlers like Teracopy will fail). However, users have reported that it does work under Mac, and can be made to work under Linux _sometimes_. Details over on the [wiki page](https://github.com/Ralim/ts100/wiki/Upgrading-Firmware).
|
||||
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, and plug in the USB to the computer.
|
||||
2. The unit will appear as a USB drive. ( Screen will say `DFU` on it.)
|
||||
3. Drag the .hex file onto the USB drive.
|
||||
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.)
|
||||
3. Drag the `.hex` file onto the USB drive.
|
||||
4. The unit will disconnect and reconnect.
|
||||
5. The filename will have changed to end in .RDY or .ERR
|
||||
6. If it ends with .RDY you're done! Otherwise, something went wrong.
|
||||
7. If it didn't work the first time, try copying the file again without disconnecting the iron, often it will work on the second shot.
|
||||
8. Disconnect the USB and power up the iron. You're good to go.
|
||||
5. The filename will have changed to end in *.RDY* or *.ERR*
|
||||
6. If it ends with *.RDY* you're done! Otherwise, something went wrong.
|
||||
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.
|
||||
|
||||
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).
|
||||
|
||||
For the TS80 the SWD pins are used for the QC negotiation, so you can actually connect to the SWD power via the USB connector.
|
||||
|
||||
# Mac
|
||||
## Mac
|
||||
|
||||
sgr1ff1n (Shane) commented in [issue 11](https://github.com/Ralim/ts100/issues/11) that upgrading worked on their Mac as per normal:
|
||||
|
||||
> I just wanted to say that I was able to update the firmware on my ts100 from the stock version to 1.08 found in this repository using my Mac. I simply followed the same steps however through Finder. I have a MacBook Pro (13-inch, Mid 2012) running Sierra 10.12.4 (16E195).
|
||||
|
||||
# Linux
|
||||
## Linux
|
||||
|
||||
While in past there were reports of unreliable upgrades, the consensus in [issue 11](https://github.com/Ralim/ts100/issues/11) is that things work mostly as expected in Linux.
|
||||
While in the past there were reports of unreliable upgrades, the consensus in [issue 11](https://github.com/Ralim/ts100/issues/11) is that things work mostly as expected in Linux.
|
||||
|
||||
@awigen has contributed a script [flash_ts100_linux.sh](https://raw.githubusercontent.com/Ralim/ts100/master/Flashing/flash_ts100_linux.sh) that works on Ubuntu 16.04 as well as other distros.
|
||||
|
||||
@@ -80,71 +86,170 @@ rmdir /tmp/mntdfu
|
||||
Device will reboot and automount will rerun if not disabled.
|
||||
Check the extension of your firmware, it should be `.RDY` now.
|
||||
|
||||
## Pinecil (Pine64)
|
||||
|
||||
The MCU used in the Pinecil supports usb-dfu.
|
||||
# Pinecil (Pine64)
|
||||
|
||||
To enter DFU mode, hold the button at the back of the iron while connecting to usb over usb-c.
|
||||
Generally all usb controllers work, but some hubs have issues so avoiding hubs may be best.
|
||||
- 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.
|
||||
- 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.
|
||||
- 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.
|
||||
- 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.
|
||||
|
||||
Once the device is connected while holding the button, the screen will stay **off**.
|
||||
## Linux and Mac
|
||||
|
||||
This is normal, and then you can use the appropriate tool to load the .hex or .bin file as per your OS.
|
||||
### Steps
|
||||
|
||||
You can also refer to the Pine64 [Wiki](https://wiki.pine64.org/wiki/Pinecil).
|
||||
⛔ Do not use the DC power jack while updating firmware or you may destroy your PC. ⛔
|
||||
|
||||
### Linux and Mac
|
||||
|
||||
Using `dfu-util` you can flash the firmware using a command line as such:
|
||||
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.
|
||||
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.
|
||||
5. The screen will stay **black/off** to indicate the Pinecil is in DFU mode. This is normal.
|
||||
6. Once the USB cable is connected at two ends, wait 10 seconds more, then release the (-) button.
|
||||
7. Using `dfu-util` you can flash the firmware using a command line like this:
|
||||
|
||||
```
|
||||
dfu-util -D Pinecil_EN.dfu
|
||||
```
|
||||
|
||||
### Windows
|
||||
Choose the file name from the folder with the appropriate 2-letter country code for your chosen language (i.e., EN = English).
|
||||
|
||||
For windows the easiest tool to use is the vendors gui tool from [here](http://www.gd32mcu.com/download/down/document_id/176/path_type/1).
|
||||
### 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:
|
||||
```
|
||||
Found DFU: [28e9:0189] ver=0100, devnum=48, cfg=1, intf=0, path="1-1", alt=1, name="@Option Bytes /0x1FFFF800/01*016Be", serial="??"
|
||||
Found DFU: [28e9:0189] ver=0100, devnum=48, cfg=1, intf=0, path="1-1", alt=0, name="@Internal Flash /0x08000000/128*001Kg", serial="??"
|
||||
```
|
||||
In this example we see that more than one part of the Pinecil is detected as a DFU interface and we need to specify which one we want to flash to. We want the `Internal Flash` so in this case we can use `alt=0` to identify which interface to target. The command would then look like this:
|
||||
```
|
||||
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'.
|
||||
- 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.
|
||||
- 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.
|
||||
- `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"
|
||||
```
|
||||
|
||||
Should the link break, its called "GD32 MCU Dfu Tool" and can be grabbed from http://www.gd32mcu.com/en/download/.
|
||||
|
||||
You will also need the matching drivers from [here](http://www.gd32mcu.com/download/down/document_id/244/path_type/1) installed if you have not used gigadevice parts before.
|
||||
## Windows
|
||||
|
||||
These are called "GD32 Dfu Drivers" if the link breaks.
|
||||
Two Options for Windows
|
||||
|
||||
You can also use dfu-util if you wish to set it up, but that is better documented by others
|
||||
### Option 1: use command line
|
||||
|
||||
### FAQ
|
||||
### Steps
|
||||
|
||||
⛔ Do not use the DC power jack while updating firmware or you may destroy your PC. ⛔
|
||||
|
||||
1. Using command line `dfu-util` is similar to above for Linux / Mac.
|
||||
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).
|
||||
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.
|
||||
6. Screen will stay **black/off** to indicate the Pinecil is in DFU mode. This is normal.
|
||||
7. After the USB cable is connected at both ends, wait ~10 seconds more, then release the (-) button.
|
||||
8. Open PowerShell or Command window.
|
||||
9. Change to the directory of the unzipped firmware files
|
||||
10. Using `dfu-util,` flash the firmware using a command like this:
|
||||
|
||||
```
|
||||
dfu-util -D Pinecil_EN.dfu
|
||||
```
|
||||
- If you have errors, see Troubleshooting [above](/Documentation/Flashing.md#troubleshooting).
|
||||
|
||||
|
||||
### Option 2: use the GUI tool from chip vendor
|
||||
|
||||
### Steps
|
||||
|
||||
⛔ 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.
|
||||
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`.
|
||||
- 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/).
|
||||
- Check properties of both downloads, tick Unblock if needed, then Unzip
|
||||
4. Install the drivers and the GD32 DFU tool (ignore prompts to update the tool).
|
||||
5. Enter DFU mode: press and hold (-) button at the back of Pinecil (do not release).
|
||||
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.
|
||||
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.
|
||||
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.
|
||||
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)
|
||||
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`.
|
||||
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.
|
||||
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
|
||||
|
||||
- If you have errors, see Troubleshooting [above](/Documentation/Flashing.md#troubleshooting).
|
||||
|
||||
|
||||
|
||||
## FAQ
|
||||
|
||||
#### [Miniware] The file is showing up with the extension `.ERR`
|
||||
|
||||
This can occur during the programming process if any of the checks in the bootloader fail. This is often triggered by anti-virus software or using a non-windows host OS.
|
||||
This can occur during the programming process if any of the checks in the bootloader fail. This is often triggered by anti-virus software or using a non-Windows host OS.
|
||||
|
||||
First, try just copying the file a second time.
|
||||
|
||||
1. Attach the iron in DFU mode
|
||||
2. Copy the hex file to the device
|
||||
3. The device disconnects and connects with the `.ERR` file
|
||||
4. Copy the same hex file again **DO NOT TRY AND DELETE THE OLD ONE**
|
||||
5. The device will disconnect and reconnect again
|
||||
6. The device _should_ now have the `.RDY` file
|
||||
1. Attach the iron in DFU mode.
|
||||
2. Copy the `.hex` file to the device.
|
||||
3. The device disconnects and connects with the `.ERR` file.
|
||||
4. Copy the same `.hex` file again **⛔ DO NOT TRY AND DELETE THE OLD ONE ⛔**.
|
||||
5. The device will disconnect and reconnect again.
|
||||
6. The device _should_ now have the `.RDY` file.
|
||||
7. You're done.
|
||||
|
||||
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
|
||||
|
||||
First, check 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_.
|
||||
|
||||
Secondly, 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.
|
||||
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).
|
||||
`ts100-stockbl.hex` will reflash the stock bootloader, `ts100-dapboot.hex` will flash the new dapboot based usb bootloader.
|
||||
To install this alternative bootloader, follow the instructions [here](https://github.com/Ralim/IronOS-dfu/blob/mainline/docs/Bootloader.md).
|
||||
|
||||
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.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Getting Started
|
||||
|
||||
Getting started with Iron OS on your Pinecil/TS80/TS80P/TS100.
|
||||
If your device did not come with Iron OS already installed, or if you need to update to the latest version; please see the [Flashing Guide](/Documentation/Flashing.md).
|
||||
Getting started with IronOS on your Pinecil/TS80/TS80P/TS100.
|
||||
If your device did not come with IronOS already installed, or if you need to update to the latest version; please see the [Flashing Guide](/Documentation/Flashing.md). It is recommended to update to the newest stable release.
|
||||
|
||||
Once your Iron has been flashed, on first power on it _may_ warn you about the system settings being reset.
|
||||
_Do not panic_; this is 100% completely normal. This is here to note to you that they have been reset to handle the internal structure changing.
|
||||
@@ -18,7 +18,7 @@ By default this will show a screen similar to the one below:
|
||||
|
||||
Note that this may be drawn mirrored depending on the orientation of your screen.
|
||||
|
||||
The soldering iron symbol on the screen will appear near the tip. This is here to indicate that pressing the button closest to the front of the soldering iron will enter soldering mode.
|
||||
The soldering iron symbol on the screen will appear near the tip. This is here to indicate that pressing the button closest to the front of the iron will enter soldering mode.
|
||||
|
||||
And naturally, the spanner like icon represents that pressing the button near the rear of the soldering iron will enter the settings menu.
|
||||
|
||||
@@ -40,40 +40,43 @@ If you press and hold the button near the rear of the iron it will take you into
|
||||
|
||||
## Soldering Mode
|
||||
|
||||
When you press the button to enter into the soldering mode, the iron will instantly start to heat up the tip.
|
||||
When you press the button to enter the soldering mode, the iron will instantly start to heat up the tip.
|
||||
|
||||
The firmware defaults to 320C as the set point for the soldering mode, however on this screen you can enter into the adjustment screen by pressing either button.
|
||||
The firmware defaults to 320 °C as the set point for the soldering mode, however on this screen you can enter into the adjustment screen by pressing either button.
|
||||
|
||||
Pressing and holding the button near the tip will enter **boost** mode. This allows temporarily overriding the set temperature to a higher (or lower) value. This can be useful as a way to force the tip to a higher temperature to drive more wattage into a large joint when the thermal connection is not ideal.
|
||||
Pressing and holding the button near the tip will enter **Boost** mode. This allows a temporary override of the set temperature to a higher (or lower) value. This can be useful as a way to force the tip to a higher temperature to drive more wattage into a large joint when the thermal connection is not ideal.
|
||||
|
||||
Pressing and holding the rear button will exit soldering mode and land you back at the home screen. You can also do this by pressing both buttons at once and this will also work, this is a bit harder to do but is kept for compatibility with the Miniware firmware.
|
||||
|
||||
Pressing and holding **both** buttons at once will enter locked mode, which will prevent the buttons from doing anything. You can in the settings allow boost mode in locked mode optionally. This can be useful if you find yourself hitting the buttons and entering into the temperature adjustment screen by accident.
|
||||
|
||||
### Idle sleep
|
||||
### Idle Sleep
|
||||
|
||||
If the iron detects a period of time without any significant movement, it will enter into a sleep mode. This is indicated with a graphic on the screen similar to ZZzz (or text in detailed mode).
|
||||
If the iron detects a period of time without any significant movement, it will enter sleep mode. This is indicated with a screen graphic similar to Zzzz (or text in detailed mode).
|
||||
|
||||
In this mode, the temperature of the iron will automatically reduce down to a temperature just below the melting point of the solder. This helps reduce the rate of oxidation and damage to the iron tip.
|
||||
In Sleep mode, the temperature of the iron automatically lowers to 150 °C (default), which is just below the melting point of the solder. This helps reduce rate of oxidation and damage to the iron tip. In general, when not using the iron, unplug it or let it sleep to increase the longevity of replaceable tips. The default sleep temperature can be customized.
|
||||
|
||||
Simply picking up or moving the iron will wake it back up into soldering mode. You can also press any button and this will also wake the iron up.
|
||||
|
||||
The Pinecil has a footprint (unpopulated) on the PCB for a hall effect sensor (Si7210). If you fit this then iron will additionally force sleep when it detects a strong magnetic field near the tip of the plastic body. This allows attaching a strong magnet near your iron holder to ensure it always enters sleep.
|
||||
Optional Hall Effect Feature (Pinecil only):
|
||||
Pinecil has an unpopulated footprint (U14) for a hall effect sensor (Si7210). Adding the sensor and placing a strong magnet on the holder stand will trigger Pinecil to sleep after it enters the stand, and Zzzz will appear on the screen. The magnet is positioned on the stand in proximity to the sensor which then activates one of 10 user defined settings (0=off, 1=lowest sensitivity, 9=highest sensitivity). Read the Hall Sensor document for details on [installation](/Documentation/HallSensor.md).
|
||||
|
||||
### Idle shutdown
|
||||
|
||||
If, after entering sleep mode the iron still does not see movement for a much longer time; it will shut down and return to the home screen.
|
||||
### Idle Shutdown
|
||||
|
||||
If, after entering sleep mode, the iron still does not see movement for a much longer time (default=10 minutes); it will shut down and return to the home screen.
|
||||
|
||||
|
||||
## Settings Menu
|
||||
|
||||
The settings menu is the most often evolving aspect of the firmware, so each option is not documented here. However, do not panic, as every menu option has a description so that you don't _need_ to come back here to figure them all out.
|
||||
The settings menu is the most often evolving aspect of the firmware, so each option is not documented here. However, do not panic, as every menu option has an on-screen description so you don't _need_ to come back here to figure them all out.
|
||||
|
||||
To navigate the menu, the two buttons act separately.
|
||||
The button that you pressed to enter the menu (rear) cycles down the options, and the other button (front) will change the current option.
|
||||
The button that you pressed to enter the menu (rear) scrolls down the options, and the other button (front) will enter and change the current option.
|
||||
|
||||
To see a description of an option, just pause and wait and after a little bit, it will scroll across the screen.
|
||||
To see a description of an option, just wait and after a little time, it will scroll across the screen.
|
||||
|
||||
The menu is comprised of a "main menu" of categories and then sub-items that allows you to adjust parameters.
|
||||
The menu is comprised of a 'main menu' of categories and then sub-items that allows you to adjust parameters.
|
||||
|
||||
You can long hold buttons to change through options faster, and there is some acceleration when holding the buttons.
|
||||
|
||||
@@ -81,4 +84,4 @@ There is a small scrollbar that will be shown along the edge of the screen to in
|
||||
|
||||
Additionally, this scrollbar will blink rapidly when you are on the last item in a menu choice.
|
||||
|
||||
I highly recommend taking a few minutes to go through all of the options in the menu to get a feel for what you can change, almost every aspect of the internal system is adjustable to suit you.
|
||||
I highly recommend taking a few minutes to go through all of the options in the menu to get a feel for what you can change, almost every aspect of the internal system is adjustable to suit your needs.
|
||||
|
||||
20
Documentation/HallSensor.md
Normal file
20
Documentation/HallSensor.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Hall Effect Sensor
|
||||
|
||||
## Sleep Mode Menu
|
||||
|
||||
In Sleep mode, the temperature of the iron automatically lowers to 150 °C (default), which is just below the melting point of the solder. This helps reduce rate of oxidation and damage to the iron tip. In general, when not using the iron, unplug it or let it sleep to increase the longevity of replaceable tips. The default sleep temperature can be customized.
|
||||
|
||||
Simply moving the iron will wake it back up into soldering mode. You can also press any button and this will also wake-up the iron.
|
||||
|
||||
### Optional Hall Effect Feature (Pinecil only):
|
||||
|
||||
Inside the Sleep Menu is an additional type of sleep setting. Pinecil has an unpopulated footprint (U14) for a hall effect sensor (Si7210). It is possible with the hall sensor to trigger Pinecil to go to sleep after it enters the stand, and Zzzz will appear on the screen. After installing the hall sensor, a magnet is positioned on the stand close enough to the sensor to activate one of ten user selectable settings.
|
||||
- 0=off, 1=1000, 2=750, 3=500, 4=250, 5=150, 6=100, 7=75, 8=50, 9=25 (9 has the highest sensitivity to magnets)
|
||||
- Setting of 1 might be used if you solder on PCBs with magnets and do not wish Pinecil to auto-sleep constantly. And a very strong/large magnet would be required on the stand to activate the sensor sleep mode.
|
||||
- Setting of 9 would be useful if you only had a small magnet and are not concerned about Pinecil falsely triggering sleep mode near magnetized items/tools.
|
||||
- Neodymium magnets are recommended. If using small magnets, 2-3 may be required, but too many can also be detrimental.
|
||||
- Actively watch the hall number change (in [debug menu](/Documentation/DebugMenu.md)) while you slowly move the magnet around to seek the best locations & whether you have too many or too few magnets. Positioning the magnet where you have the highest hall number will ensure consistent sleep mode when you place the iron in the stand. This requires some experimenting.
|
||||
- Sensor is physically located near the copper contacts for the tip at the front of the handle. Reference [Schematics U14](https://files.pine64.org/doc/Pinecil/Pinecil_schematic_v1.0a_20201120.pdf).
|
||||
- Positioning/type/quantity of magnets is important for best results. Sometimes [too many magnets](https://www.youtube.com/shorts/afkqKwCX00I) breaks the effect by distorting the magnetic field.
|
||||
- Orientation of North and South faces of magnets is important to increase reaction of the hall sensor [SI7210-B-00-IV](https://www.silabs.com/documents/public/application-notes/an1018-si72xx-sensors.pdf).
|
||||
|
||||
@@ -5,4 +5,4 @@
|
||||
- Accelerometer is the MSA301, this is mounted roughly in the middle of the unit
|
||||
- USB-PD is using the 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
|
||||
|
||||
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**
|
||||
|
||||
|
||||
@@ -1,40 +1,39 @@
|
||||
# Startup Logos
|
||||
|
||||
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
|
||||
|
||||
The [Python script](https://github.com/Ralim/ts100/blob/master/Bootup%20Logo/python_logo_converter/img2ts100.py) converts an image passed into it on the command line to a HEX file to be uploaded to the iron in DFU mode (similar to the process described above). The image can be in color and any size, but it will be resized and converted to 1-bit color. However, it looks best if you create a 96x16 image in an image editor and color the pixels black or white manually.
|
||||
The [Python script](https://github.com/Ralim/IronOS-Meta/blob/main/Bootup%20Logos/img2logo.py) converts an image passed into it on the command line to a `.hex` file or a `.dfu` to be uploaded to the iron in DFU mode (similar to the process described above). The image can be in color and any size, but it will be resized and converted to 1-bit color. However, it looks best if you create a 96x16 image in an image editor and color the pixels black or white manually.
|
||||
|
||||
There are community logo's already converted available for download in the releases in [IronOS-Meta](https://github.com/Ralim/IronOS-Meta/).
|
||||
|
||||
The converter requires at least Python 3 and Pillow (if you don't have it, it will tell you to install PIL, which is an old version of the same thing). See [this page](https://stackoverflow.com/a/20061019/6705343) on StackOverflow about installing it.
|
||||
|
||||
What works can vary, but this command may work:
|
||||
|
||||
`python3 -m pip install Pillow`
|
||||
`python3 -m pip install pillow`
|
||||
|
||||
Then, to convert an image:
|
||||
|
||||
`python3 img2ts100.py infile.png outfile.hex`
|
||||
- `python3 img2logo.py infile.png out -m` for Miniware
|
||||
- `python3 img2logo.py infile.png out -p` for Pinecil
|
||||
|
||||
Run `python3 img2ts100.py --help` to see available options.
|
||||
Run `python3 img2logo.py --help` to see available options.
|
||||
|
||||
## Flashing the Logo
|
||||
|
||||
### 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.
|
||||
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
|
||||
|
||||
### Pinecil
|
||||
|
||||
For the Pinecil, we require to flash the logo using dfu-util instead, which will only take `.bin` files rather than `.hex`.
|
||||
To flash the logo, use the following steps:
|
||||
For Pinecil, we require using dfu-util instead to flash the logo art (Pinecil does not use hex).
|
||||
Please see the [Meta repo](https://github.com/Ralim/IronOS-Meta) for the tooling for converting logo's as well as automatically generated logo's
|
||||
|
||||
|
||||
- `python3 img2ts100.py input.png logo.hex`
|
||||
- `riscv-nuclei-elf-objcopy -I ihex -O binary logo.hex logo.bin`
|
||||
- `dfu-util -d 28e9:0189 -a 0 -D logo.bin -s 0x0801F800`
|
||||
|
||||
This will use the objcopy tool to convert the hex to a binary file, and then use dfu-util to flash it in the right location.
|
||||
If you do not have `riscv-nuclei-elf-objcopy` installed, you can generally use any objcopy tool from any toolchain you do have.
|
||||
- `dfu-util -D logo_file.dfu`
|
||||
|
||||
@@ -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.
|
||||
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.
|
||||
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.
|
||||
With submenus being selected to enter using the front button (as if you were going to change the setting).
|
||||
@@ -22,7 +22,7 @@ Scrolling through the submenu will return you back to its entry location after y
|
||||
|
||||
### Calibrating input voltage
|
||||
|
||||
Due to the tolerance on the resistors used for the input voltage divider, some irons can be up to 0.6V out on the voltage measurement.
|
||||
Due to the tolerance on the resistors used for the input voltage divider, some irons can be up to 0.6 V out on the voltage measurement.
|
||||
Please calibrate your iron if you have any issues with the cutoff voltage.
|
||||
Note that cutoff messages can also be triggered by using a power supply that is too weak and fails under the load of the iron.
|
||||
|
||||
@@ -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:
|
||||
|
||||
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
|
||||
4. Scroll down to the advanced menu, and then the temperature calibration
|
||||
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
|
||||
|
||||
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.
|
||||
|
||||
@@ -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).
|
||||
|
||||
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 12V power supplies.
|
||||
Therefore the TS100 performs poorly when run off 12 V power supplies.
|
||||
|
||||
## Output Control & Regulation
|
||||
|
||||
|
||||
314
Documentation/Settings.md
Normal file
314
Documentation/Settings.md
Normal file
@@ -0,0 +1,314 @@
|
||||
<!-- This is an automatically generated file. DO NOT EDIT. Edit gen_menu_docs.py instead -->
|
||||
|
||||
# IronOS Settings Menu
|
||||
|
||||
The below breaks down the menu's and what each setting means.
|
||||
|
||||
## Menu Categories
|
||||
|
||||
In the menu there are a few main categories that are used to keep the list manageable.
|
||||
|
||||
### Category: Power settings
|
||||
|
||||
Menu for settings related to power. Main settings to do with the input voltage.
|
||||
|
||||
### Category: Soldering settings
|
||||
|
||||
Settings for soldering mode, such as boost temps, the increment used when pressing buttons and if button locking is enabled.
|
||||
|
||||
### Category: Sleep mode
|
||||
|
||||
Settings to do with power saving, such as sleep mode, sleep temps, and shutdown modes.
|
||||
|
||||
### Category: User interface
|
||||
|
||||
User interface related settings, such as units.
|
||||
|
||||
### Category: Advanced settings
|
||||
|
||||
Advanced settings. Misc catchall for settings that don't fit anywhere else or settings that require some thought before use.
|
||||
|
||||
## Settings
|
||||
|
||||
These are all of the settings possible in the menu.
|
||||
**Not all settings are visible for all devices.**
|
||||
For example, the TS100 does not have USB-PD settings.
|
||||
|
||||
When using the device, if unsure you can pause (press nothing) on a setting and after a short delay help text will scroll across the screen.
|
||||
This is the "on device help text".
|
||||
|
||||
### Setting: Power source
|
||||
|
||||
When the device is powered by a battery, this adjusts the low voltage threshold for when the unit should turn off the heater to protect the battery.
|
||||
|
||||
On device help text:
|
||||
|
||||
Power source. Sets cutoff voltage. (DC 10V) (S 3.3V per cell, disable power limit)
|
||||
|
||||
### Setting: Sleep temp
|
||||
|
||||
Temperature the device will drop down to while asleep. Typically around halfway between off and soldering temperature.
|
||||
|
||||
On device help text:
|
||||
|
||||
Tip temperature while in "sleep mode"
|
||||
|
||||
### Setting: Sleep timeout
|
||||
|
||||
How long of a period without movement / button-pressing is required before the device drops down to the sleep temperature.
|
||||
|
||||
On device help text:
|
||||
|
||||
Interval before "sleep mode" kicks in (S=seconds | M=minutes)
|
||||
|
||||
### Setting: Shutdown timeout
|
||||
|
||||
How long of a period without movement / button-pressing is required before the device turns off the tip heater completely and returns to the main idle screen.
|
||||
|
||||
On device help text:
|
||||
|
||||
Interval before the iron shuts down (M=minutes)
|
||||
|
||||
### Setting: Motion sensitivity
|
||||
|
||||
Scale of how sensitive the device is to movement. Higher numbers == more sensitive. 0 == motion detection turned off.
|
||||
|
||||
On device help text:
|
||||
|
||||
0=off | 1=least sensitive | ... | 9=most sensitive
|
||||
|
||||
### Setting: Temperature unit
|
||||
|
||||
If the device shows temperatures in °C or °F.
|
||||
|
||||
On device help text:
|
||||
|
||||
C=Celsius | F=Fahrenheit
|
||||
|
||||
### Setting: Detailed idle screen
|
||||
|
||||
Should the device show an 'advanced' view on the idle screen. The advanced view uses text to show more details than the typical icons.
|
||||
|
||||
On device help text:
|
||||
|
||||
Display detailed information in a smaller font on the idle screen
|
||||
|
||||
### Setting: Display orientation
|
||||
|
||||
If the display should rotate automatically or if it should be fixed for left- or right-handed mode.
|
||||
|
||||
On device help text:
|
||||
|
||||
R=right-handed | L=left-handed | A=automatic
|
||||
|
||||
### Setting: Boost temp
|
||||
|
||||
When the unit is in soldering mode. You can hold down the button at the front of the device to temporarily override the soldering temperature to this value. This SETS the temperature, it does not ADD to it.
|
||||
|
||||
On device help text:
|
||||
|
||||
Temperature used in "boost mode"
|
||||
|
||||
### Setting: Start-up behavior
|
||||
|
||||
When the device powers up, should it enter into a special mode. These settings set it to either start into soldering mode, sleeping mode or auto mode (Enters into soldering mode on the first movement).
|
||||
|
||||
On device help text:
|
||||
|
||||
O=off | S=soldering temp | Z=standby at sleep temp until moved | R=standby without heating until moved
|
||||
|
||||
### Setting: Cooldown flashing
|
||||
|
||||
If the idle screen should blink the tip temperature for attention while the tip is over 50°C. Intended as a 'tip is still hot' warning.
|
||||
|
||||
On device help text:
|
||||
|
||||
Flash the temperature reading after heating was halted while the tip is still hot
|
||||
|
||||
### Setting: Calibrate temperature?
|
||||
|
||||
Used to calibrate the ADC+Op-amp offsets for the tip. This calibration must be performed when the tip temperature and the handle temperature are equal. Generally not required unless your device is reading more than 5°C off target.
|
||||
|
||||
On device help text:
|
||||
|
||||
Start tip temperature offset calibration
|
||||
|
||||
### Setting: Restore factory settings?
|
||||
|
||||
Resets all settings and calibrations to factory defaults. Does NOT erase custom user boot up logo's.
|
||||
|
||||
On device help text:
|
||||
|
||||
Reset all settings to default
|
||||
|
||||
### Setting: Calibrate input voltage?
|
||||
|
||||
Enters an adjustment mode where you can gradually adjust the measured voltage to compensate for any unit-to-unit variance in the voltage sense resistors.
|
||||
|
||||
On device help text:
|
||||
|
||||
Start VIN calibration (long press to exit)
|
||||
|
||||
### Setting: Detailed solder screen
|
||||
|
||||
Should the device show an 'advanced' soldering view. This is a text-based view that shows more information at the cost of no nice graphics.
|
||||
|
||||
On device help text:
|
||||
|
||||
Display detailed information in a smaller font on soldering screen
|
||||
|
||||
### Setting: Scrolling speed
|
||||
|
||||
How fast the description text scrolls when hovering on a menu. Faster speeds may induce tearing, but allow reading the whole description faster.
|
||||
|
||||
On device help text:
|
||||
|
||||
Speed info text scrolls past at (S=slow | F=fast)
|
||||
|
||||
### Setting: QC voltage
|
||||
|
||||
This adjusts the maximum voltage the QC negotiation will adjust to. Does NOT affect USB-PD. Should be set safely based on the current rating of your power supply.
|
||||
|
||||
On device help text:
|
||||
|
||||
Max QC voltage the iron should negotiate for
|
||||
|
||||
### Setting: PD timeout
|
||||
|
||||
How long until firmware stops trying to negotiate for USB-PD and tries QC instead. Longer times may help dodgy / old PD adapters, faster times move onto PD quickly. Units of 100ms. Recommended to keep small values.
|
||||
|
||||
On device help text:
|
||||
|
||||
PD negotiation timeout in 100ms steps for compatibility with some QC chargers
|
||||
|
||||
### Setting: Power limit
|
||||
|
||||
Allows setting a custom wattage for the device to aim to keep the AVERAGE power below. The unit can't control its peak power no matter how you set this. (Except for MHP30 which will regulate nicely to this). If USB-PD is in use, the limit will be set to the lower of this and the supplies advertised wattage.
|
||||
|
||||
On device help text:
|
||||
|
||||
Maximum power the iron can use (W=watt)
|
||||
|
||||
### Setting: Swap + - keys
|
||||
|
||||
Swaps which button increments and decrements on temperature change screens.
|
||||
|
||||
On device help text:
|
||||
|
||||
Reverse assignment of buttons for temperature adjustment
|
||||
|
||||
### Setting: Temp change short
|
||||
|
||||
Factor by which the temperature is changed with a quick press of the buttons.
|
||||
|
||||
On device help text:
|
||||
|
||||
Temperature-change-increment on short button press
|
||||
|
||||
### Setting: Temp change long
|
||||
|
||||
Factor by which the temperature is changed with a hold of the buttons.
|
||||
|
||||
On device help text:
|
||||
|
||||
Temperature-change-increment on long button press
|
||||
|
||||
### Setting: Power pulse
|
||||
|
||||
Enables and sets the wattage of the power pulse. Power pulse causes the device to briefly turn on the heater to draw power to avoid power banks going to sleep.
|
||||
|
||||
On device help text:
|
||||
|
||||
Intensity of power of keep-awake-pulse (watt)
|
||||
|
||||
### Setting: Hall sensor sensitivity
|
||||
|
||||
If the unit has a hall effect sensor (Pinecil), this adjusts how sensitive it is at detecting a magnet to put the device into sleep mode.
|
||||
|
||||
On device help text:
|
||||
|
||||
Sensitivity of the Hall effect sensor to detect sleep (O=off | L=low | M=medium | H=high)
|
||||
|
||||
### Setting: Allow locking buttons
|
||||
|
||||
If locking the buttons against accidental presses is enabled.
|
||||
|
||||
On device help text:
|
||||
|
||||
While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)
|
||||
|
||||
### Setting: Minimum voltage
|
||||
|
||||
When powered by a battery, this adjusts the minimum voltage per cell before shutdown. (This is multiplied by the cell count.)
|
||||
|
||||
On device help text:
|
||||
|
||||
Minimum allowed voltage per cell (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)
|
||||
|
||||
### Setting: Anim. loop
|
||||
|
||||
Should the menu animations loop. Only visible if the animation speed is not set to "Off"
|
||||
|
||||
On device help text:
|
||||
|
||||
Loop icon animations in main menu
|
||||
|
||||
### Setting: Anim. speed
|
||||
|
||||
How fast should the menu animations loop, or if they should not loop at all.
|
||||
|
||||
On device help text:
|
||||
|
||||
Pace of icon animations in menu (O=off | S=slow | M=medium | F=fast)
|
||||
|
||||
### Setting: Power pulse delay
|
||||
|
||||
Adjusts the time interval between power pulses. Longer gaps reduce undesired heating of the tip, but needs to be fast enough to keep your power bank awake.
|
||||
|
||||
On device help text:
|
||||
|
||||
Delay before keep-awake-pulse is triggered (x 2.5s)
|
||||
|
||||
### Setting: Power pulse duration
|
||||
|
||||
How long should the power pulse go for. Some power banks require seeing the power draw be sustained for a certain duration to keep awake. Should be kept as short as possible to avoid wasting power / undesired heating of the tip.
|
||||
|
||||
On device help text:
|
||||
|
||||
Keep-awake-pulse duration (x 250ms)
|
||||
|
||||
### Setting: Language: EN English
|
||||
|
||||
Changes the device language on multi-lingual builds.
|
||||
|
||||
On device help text:
|
||||
|
||||
Current firmware language
|
||||
|
||||
### Setting: Screen brightness
|
||||
|
||||
Display brightness. Higher values age the OLED faster due to burn-in. (However, it is notable that most of these screens die from other causes first.)
|
||||
|
||||
On device help text:
|
||||
|
||||
Adjust the brightness of the OLED screen
|
||||
|
||||
### Setting: Invert screen
|
||||
|
||||
Inverts the entire OLED.
|
||||
|
||||
On device help text:
|
||||
|
||||
Invert the colours of the OLED screen
|
||||
|
||||
### Setting: Boot logo duration
|
||||
|
||||
Sets the duration of the boot logo from 1 second to 4 seconds.
|
||||
- For static images this sets the time the logo is displayed for.
|
||||
- For animations this sets the time the last frame is displayed for after the animation has been played.
|
||||
|
||||
The infinity icon sets a logo or the last frame of an animation to be displayed until a button is pressed.
|
||||
|
||||
On device help text:
|
||||
|
||||
Sets the duration for the boot logo (S=seconds)
|
||||
@@ -15,7 +15,7 @@ This has some fairly large limitations, but it also has the benefit of being ext
|
||||
Conventionally a thermocouple is created using two dissimilar metals that join, and then the other ends of these metals are terminated to copper contacts. These copper contacts are also part of the construction of the thermocouple and are referred to as the cold junction.
|
||||
As there are these extra two joins between the thermocouple wires and the copper; these also have properties of their own in their reactions with temperature.
|
||||
|
||||
If the cold junction is held at 0 degree's C, then their effect is considered to be null, and so they can be ignored. However, in the real world the joins to copper are often at room temperature, and as such the measured voltage from the thermocouple must be compensated to remove the influence of these joints. This process is often called cold junction compensation.
|
||||
If the cold junction is held at 0 degrees Celsius, then their effect is considered to be null, and so they can be ignored. However, in the real world the joins to copper are often at room temperature, and as such the measured voltage from the thermocouple must be compensated to remove the influence of these joints. This process is often called cold junction compensation.
|
||||
|
||||
Every time in the circuit there is a join between two different metals, there is a small thermocouple created, this means that _every_ soldered connection is also one.
|
||||
|
||||
@@ -25,9 +25,9 @@ Every time in the circuit there is a join between two different metals, there is
|
||||
If you analyse one of the open circuit schematics (Pinecil, TS100, TS80) they all use the same approximate formula.
|
||||
This consists of an op-amp that is connected directly across the heating connections to the tip, and a separate handle temperature sensor.
|
||||
|
||||
When the iron is **not** heating the tip, the microcontroller uses the ADC to read the output from the op-amp. This produces a voltage that _should_ be linear to the temperature of (tip-handle). This value is then offset compensated (to remove ADC+op-amp offsets), and then converted into a temperature delta in C/K. This temperature delta can then be added to the handle temperature to derive the tip temperature in C.
|
||||
When the iron is **not** heating the tip, the microcontroller uses the ADC to read the output from the op-amp. This produces a voltage that _should_ be linear to the temperature of (tip-handle). This value is then offset compensated (to remove ADC+op-amp offsets), and then converted into a temperature delta in °C/K. This temperature delta can then be added to the handle temperature to derive the tip temperature in degrees Celsius.
|
||||
|
||||
Depending on the construction of the tip, the lookup values used for converting the tip reading in uV into degrees C/K varies. It is worth noting, however, that TS100 and Pinecil tips are approximately the same as the Hakko T12 tips. (In @Ralim's testing, to within measurement error). This makes sense as these tips are cheap and would have made an excellent design for Miniware to have cloned in making the TS100 in the first place.
|
||||
Depending on the construction of the tip, the lookup values used for converting the tip reading in µV into °C/K varies. It is worth noting, however, that TS100 and Pinecil tips are approximately the same as the Hakko T12 tips. (In @Ralim's testing, to within measurement error). This makes sense as these tips are cheap and would have made an excellent design for Miniware to have cloned in making the TS100 in the first place.
|
||||
|
||||
## Implications of this
|
||||
|
||||
@@ -43,7 +43,7 @@ The PID controller in the firmware is tuned to be slightly underdamped and thus
|
||||
|
||||
This is why sometimes the temperature may flick around a little during use but the tip temperature itself is quite stable. The thermal mass of the tip smooths these small amounts out nicely for the user. Though seeing larger jumps on some tips than others _may_ indicate that the tip does not have optimal internal thermal bonding between the heater coil and the tip itself.
|
||||
|
||||
The firmware uses the theory that these irons are more towards the power users territory than most, so it tries to not hide the actual temperature. What some soldering iron controllers do is that they hide the actual measurement once you are within a certain tolerance of this. For example, on a digital Weller unit Ralim has to hand, if set to 350C, it will regulate to within around +-3 C but not indicate you are outside of this bad until you exceed +-5C. This gives the illusion that it's holding the temperature perfectly when in actuality it's moving around as well.
|
||||
The firmware uses the theory that these irons are more towards the power users territory than most, so it tries to not hide the actual temperature. What some soldering iron controllers do is that they hide the actual measurement once you are within a certain tolerance of this. For example, on a digital Weller unit Ralim has to hand, if set to 350 °C, it will regulate to within around +-3 °C but not indicate you are outside of this bad until you exceed +-5 °C. This gives the illusion that it's holding the temperature perfectly when in actuality it's moving around as well.
|
||||
|
||||
Given enough time (3-5 seconds) with no external cooling, the inside and outside temperatures of the tip will be equal. When testing the tip temperature accuracy try to allow time for the system to stabilise.
|
||||
|
||||
@@ -53,6 +53,6 @@ The firmware in these irons does a best-effort of calculating an accurate temper
|
||||
|
||||
The firmware only accounts for cold junction compensation and then treats the remaining error as being a constant offset.
|
||||
While the error is small, it is actually composed of both a constant offset as well as an offset that is linear to the handle temperature.
|
||||
This offset that is linear to handle temperature is as of current not modelled into the firmware and there is assumed to be constant. This is generally "close enough" as once the unit is in use, the handle temperature is usually within 10C as the components inside warm-up from use. This means that this error is "relatively" constant once the unit is being used. However, this can cause odd behaviour when the tip temperature ~= room temperature. And can cause some jumping and movement in the readings when attempting to control the tip to sub 100C.
|
||||
This offset that is linear to handle temperature is as of current not modelled into the firmware and there is assumed to be constant. This is generally "close enough" as once the unit is in use, the handle temperature is usually within 10 °C as the components inside warm-up from use. This means that this error is "relatively" constant once the unit is being used. However, this can cause odd behaviour when the tip temperature ~= room temperature. And can cause some jumping and movement in the readings when attempting to control the tip to sub 100 °C.
|
||||
|
||||
This is a known tradeoff that is made as the irons intended use case means that it will spend most of its time above 150C, at which point these errors are no longer the dominant error sources in the system.
|
||||
This is a known tradeoff that is made as the irons intended use case means that it will spend most of its time above 150 °C, at which point these errors are no longer the dominant error sources in the system.
|
||||
|
||||
77
Documentation/Troubleshooting.md
Normal file
77
Documentation/Troubleshooting.md
Normal file
@@ -0,0 +1,77 @@
|
||||
# Troubleshooting
|
||||
|
||||
If your device is not operating as expected; and you are within the manufacturer support window, please first contact your manufacturer and RMA / warranty your device.
|
||||
|
||||
If your iron is not working as expected, [the Debug menu](DebugMenu.md) exposes internal measurements to help you narrow down the root cause of the issue.
|
||||
|
||||
Alongside all of these, issues with the soldering of the main MCU could cause all of these as well; and should always be checked.
|
||||
|
||||
The tip is important for the operation of your iron. T100 and Pinecil tips are around 8 ohms, and TS80(P) tips are around 4.5 ohms.
|
||||
|
||||
You are welcome to open discussions about issues as well, or if you bought your Pinecil from an official store; use the Pinecil community chat for support.
|
||||
But it is helpful to do some basic diagnostics first just in case the issue is easily fixed.
|
||||
The **VAST** majority of issues are poor soldering or cold solder joints.
|
||||
If you can open up your iron, give it a good look at all the connection points, and use another iron to reflow any suspicious ones, can fix most issues.
|
||||
|
||||
## High tip temp reading when the tip is cool
|
||||
|
||||
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)
|
||||
- `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` will over-read on bad contacts or no tip inserted.
|
||||
|
||||
If `RTip` is overreading, you may have one of the following:
|
||||
|
||||
- Partially stuck on main MOSFET
|
||||
- Slow reacting main MOSFET driver transistor
|
||||
- Damaged op-amp
|
||||
- Poor soldering on the op-amp circuitry
|
||||
- No tip inserted or tip that is not connecting correctly
|
||||
|
||||
If `RTip` is under-reading you most likely have issues with the op-amp or the tip. The signal should be pulled high by hardware (reading hot), so this often means the MCU is not reading the signal correctly. Check MCU soldering.
|
||||
|
||||
### CHan is out of spec
|
||||
|
||||
CHan reading comes directly from the cold junction compensation temperature sensor.
|
||||
This is usually a TMP36, or an NTC thermistor (MHP30, TS80P).
|
||||
|
||||
If `CHan` is reading low:
|
||||
|
||||
- Check the connection from the MCU to the handle temperature sensor.
|
||||
- Check the power pin connection on the TMP36
|
||||
- Check pullup resistor on the NTC thermistor
|
||||
- Check no bridged pins or weak shorts on the signal to nearby pins on MCU or temp sensor
|
||||
|
||||
If `CHan` is reading higher
|
||||
|
||||
- Check ground connections on the sensors
|
||||
- Check no bridged pins or weak shorts on the signal to nearby pins on MCU or temp sensor
|
||||
|
||||
## No display OR dots on the display
|
||||
|
||||
If when you power up your iron you get no display, the first test is to (carefully) attempt to heat the tip.
|
||||
Press the front button on your device and check if the tip heads up.
|
||||
If the tip does not heat up, it is worth trying to reflash the firmware first in case it is corrupted.
|
||||
|
||||
The main failure mode of the OLED display module is usually poor soldering on the OLED display cable to the main PCB.
|
||||
As this is soldered by hand generally, it's the most prone to failures.
|
||||
|
||||
If you have a poor connection or a floating pin, you can end up with a state where the screen works _sometimes_ and then freezes or only works on some power cycles.
|
||||
|
||||
As the OLED runs on an I2C bus, there are pull up resistors on the SDA and SCL pins. It is worth checking these as well, while they don't often fail, issues with these can cause _weird_ display issues.
|
||||
|
||||
## Tip heats when not in heating mode
|
||||
|
||||
** DISCONNECT YOUR TIP **
|
||||
|
||||
Most likely you have either a blown MOSFET or shorted pin.
|
||||
Check the MOSFET and also its driver transistor.
|
||||
The firmware will not enable the tip until you are in soldering mode.
|
||||
|
||||
## Accelerometer not detected
|
||||
|
||||
This could be that your Iron has a new accelerometer that is not supported yet (happens every year or so) OR there is a soldering issue with the accelerometer
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 554 B After Width: | Height: | Size: 696 B |
@@ -1,9 +1,11 @@
|
||||
#!/bin/bash
|
||||
# TS100 Flasher for Linux by Alex Wigen (https://github.com/awigen)
|
||||
# Jan 2021 - Update by Ysard (https://github.com/ysard)
|
||||
|
||||
DIR_TMP="/tmp/ts100"
|
||||
HEX_FIRMWARE="$DIR_TMP/ts100.hex"
|
||||
|
||||
function usage() {
|
||||
usage() {
|
||||
echo
|
||||
echo "#################"
|
||||
echo "# TS100 Flasher #"
|
||||
@@ -18,36 +20,32 @@ function usage() {
|
||||
}
|
||||
|
||||
GAUTOMOUNT=0
|
||||
function disable_gautomount {
|
||||
GSETTINGS=$(which gsettings)
|
||||
if [ $? -ne 0 ]; then
|
||||
disable_gautomount() {
|
||||
if ! GSETTINGS=$(which gsettings); then
|
||||
return 1
|
||||
fi
|
||||
gsettings get org.gnome.desktop.media-handling automount | grep true > /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
if ! gsettings get org.gnome.desktop.media-handling automount | grep true > /dev/null; then
|
||||
GAUTOMOUNT=1
|
||||
gsettings set org.gnome.desktop.media-handling automount false
|
||||
fi
|
||||
}
|
||||
|
||||
function enable_gautomount {
|
||||
enable_gautomount() {
|
||||
if [ "$GAUTOMOUNT" -ne 0 ]; then
|
||||
gsettings set org.gnome.desktop.media-handling automount true
|
||||
fi
|
||||
}
|
||||
|
||||
function is_attached {
|
||||
output=$(lsblk -b --raw --output NAME,MODEL | grep 'DFU.*Disk')
|
||||
if [ $? -ne 0 ]; then
|
||||
is_attached() {
|
||||
if ! output=$(lsblk -b --raw --output NAME,MODEL | grep 'DFU.*Disk'); then
|
||||
return 1
|
||||
fi
|
||||
DEVICE=$(echo $output | awk '{print "/dev/"$1}')
|
||||
DEVICE=$(echo "$output" | awk '{print "/dev/"$1}')
|
||||
}
|
||||
|
||||
instructions="not printed"
|
||||
function wait_for_ts100 {
|
||||
is_attached
|
||||
while [ $? -ne 0 ]; do
|
||||
wait_for_ts100() {
|
||||
while ! is_attached; do
|
||||
if [ "$instructions" = "not printed" ]; then
|
||||
echo
|
||||
echo "#####################################################"
|
||||
@@ -60,29 +58,42 @@ function wait_for_ts100 {
|
||||
instructions="printed"
|
||||
fi
|
||||
sleep 0.1
|
||||
is_attached
|
||||
done
|
||||
}
|
||||
|
||||
function mount_ts100 {
|
||||
mount_ts100() {
|
||||
mkdir -p "$DIR_TMP"
|
||||
sudo mount -t msdos -o uid=$UID "$DEVICE" "$DIR_TMP"
|
||||
if [ $? -ne 0 ]; then
|
||||
user="${UID:-$(id -u)}"
|
||||
if ! sudo mount -t msdos -o uid=$user "$DEVICE" "$DIR_TMP"; then
|
||||
echo "Failed to mount $DEVICE on $DIR_TMP"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function umount_ts100 {
|
||||
mountpoint "$DIR_TMP" > /dev/null && sudo umount "$DIR_TMP"
|
||||
if [ $? -ne 0 ]; then
|
||||
umount_ts100() {
|
||||
if ! (mountpoint "$DIR_TMP" > /dev/null && sudo umount "$DIR_TMP"); then
|
||||
echo "Failed to unmount $DIR_TMP"
|
||||
exit 1
|
||||
fi
|
||||
rmdir "$DIR_TMP"
|
||||
}
|
||||
|
||||
function cleanup {
|
||||
check_flash() {
|
||||
RDY_FIRMWARE="${HEX_FIRMWARE%.*}.rdy"
|
||||
ERR_FIRMWARE="${HEX_FIRMWARE%.*}.err"
|
||||
if [ -f "$RDY_FIRMWARE" ]; then
|
||||
echo -e "\e[92mFlash is done\e[0m"
|
||||
echo "Disconnect the USB and power up the iron. You're good to go."
|
||||
elif [ -f "$ERR_FIRMWARE" ]; then
|
||||
echo -e "\e[91mFlash error; Please retry!\e[0m"
|
||||
else
|
||||
echo -e "\e[91mUNKNOWN error\e[0m"
|
||||
echo "Flash result: "
|
||||
ls "$DIR_TMP"/ts100*
|
||||
fi
|
||||
}
|
||||
|
||||
cleanup() {
|
||||
enable_gautomount
|
||||
if [ -d "$DIR_TMP" ]; then
|
||||
umount_ts100
|
||||
@@ -102,7 +113,7 @@ if [ ! -f "$1" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $(head -c1 "$1") != ":" ] || [ $(tail -n1 "$1" | head -c1) != ":" ]; then
|
||||
if [ "$(head -c1 "$1")" != ":" ] || [ "$(tail -n1 "$1" | head -c1)" != ":" ]; then
|
||||
echo "'$1' doesn't look like a valid HEX file. Please provide a HEX file to flash"
|
||||
usage
|
||||
exit 1
|
||||
@@ -115,7 +126,7 @@ echo "Found TS100 config disk device on $DEVICE"
|
||||
|
||||
mount_ts100
|
||||
echo "Mounted config disk drive, flashing..."
|
||||
cp -v "$1" "$DIR_TMP/ts100.hex"
|
||||
cp -v "$1" "$HEX_FIRMWARE"
|
||||
sync
|
||||
|
||||
echo "Waiting for TS100 to flash"
|
||||
@@ -125,6 +136,5 @@ echo "Remounting config disk drive"
|
||||
umount_ts100
|
||||
wait_for_ts100
|
||||
mount_ts100
|
||||
check_flash
|
||||
|
||||
echo "Flash result: "
|
||||
ls "$DIR_TMP"/ts100*
|
||||
|
||||
34
README.md
34
README.md
@@ -4,7 +4,7 @@
|
||||
|
||||
# IronOS - Flexible Soldering iron control Firmware
|
||||
|
||||
_This repository was formerly known as TS100, it's the same great code. Just with more supported devices_
|
||||
_This repository was formerly known as TS100, it's the same great code. Just with more supported devices._
|
||||
|
||||
Originally conceived as an alternative firmware for the TS100, this firmware has evolved into a complex soldering iron control firmware.
|
||||
|
||||
@@ -12,15 +12,23 @@ The firmware implements all of the standard features of a "smart" soldering iron
|
||||
I highly recommend reading the installation guide fully when installing on your iron. And after install just explore the settings menu.
|
||||
|
||||
For soldering irons that are designed to be powered by "smart" power sources (QC and PD), the firmware supports settings around the negotiated power and voltage.
|
||||
For soldering irons that are designed to be powered by batteries (TS100), settings for a cutoff voltage for battery protection are supported.
|
||||
For soldering irons that are designed to be powered by batteries (TS100 & Pinecil), settings for a cutoff voltage for battery protection are supported.
|
||||
|
||||
There are 25 languages currently supported as of present. When downloading the firmware for your soldering iron take note of the language code in the file name.
|
||||
There are 30 languages currently supported as of present. When downloading the firmware for your soldering iron take note of the language code in the file name.
|
||||
|
||||
This project is considered feature complete for use as a soldering iron, _so please suggest any feature improvements you would like!_
|
||||
|
||||
_This 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.
|
||||
Long hold the rear button in soldering mode to exit back to the start screen.
|
||||
|
||||
## Installation
|
||||
|
||||
For notes on installation for your device, please refer to the [Flashing Guide](Documentation/Flashing.md).
|
||||
|
||||
## Key Features
|
||||
|
||||
@@ -29,7 +37,7 @@ To get started with this firmware, please jump over to [here](Documentation/Gett
|
||||
- Motion wake support
|
||||
- All settings exposed in the intuitive menu
|
||||
- (TS100) Set a voltage lower limit for Lithium batteries so you don't kill your battery pack
|
||||
- (TS80) Set 18W or 24W settings for your power bank
|
||||
- (TS80) Set 18 W or 24 W settings for your power bank
|
||||
- (TS80P) Automatically negotiates appropriate PD and falls back to QC mode like TS80
|
||||
- (Pinecil) Supports all 3 power modes (PD, QC, DC In).
|
||||
- Improved readability Fonts, supporting multiple languages
|
||||
@@ -41,21 +49,17 @@ To get started with this firmware, please jump over to [here](Documentation/Gett
|
||||
- [Custom boot up logo support](Documentation/Logo.md)
|
||||
- Automatic LCD rotation based on the orientation
|
||||
|
||||
## Installation
|
||||
|
||||
For notes on installation for your device, please refer to the [Flashing Guide](Documentation/Flashing.md).
|
||||
|
||||
## Menu System
|
||||
|
||||
This new firmware uses a new menu system to allow access to the settings on the device.
|
||||
When on the main screen, the unit shows a pair of prompts for the two most common operations.
|
||||
When on the main screen and having the tip plugged in, the unit shows a pair of prompts for the two most common operations.
|
||||
|
||||
- Pressing the button near the tip enters the soldering mode
|
||||
- Pressing the button near the USB enters the settings menu
|
||||
- Holding the button near the tip will enter soldering temperature adjust mode (This is the same as the one in the soldering menu, just to let you edit before heating up)
|
||||
- Holding the button near the USB end will show the [debug menu](Documentation/DebugMenu.md)
|
||||
- Pressing the button near the tip enters the *soldering mode*
|
||||
- Pressing the button near the USB end enters the *settings menu*
|
||||
- When not in *soldering mode*, holding down the button near the tip will enter *soldering temperature adjust mode* (This is the same as the one in the *soldering mode*, but allows to adjust the temperature before heating up), in *soldering mode* however this will activate *boost mode* as long as you hold down the button.
|
||||
- Holding down the button near the USB end will show the *[debug menu](Documentation/DebugMenu.md).* In *soldering mode* this ends the heating.
|
||||
|
||||
Detailed operation details are over in the [Menu information.](Documentation/Menu.md)
|
||||
Operation details are over in the [Menu information.](Documentation/Menu.md)
|
||||
|
||||
## Thanks
|
||||
|
||||
|
||||
@@ -1,282 +1,491 @@
|
||||
<!doctype html>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
|
||||
<script src="translations_commons.js"></script>
|
||||
<title>TS100 Bitmap Editor</title>
|
||||
<style>
|
||||
.matrix {
|
||||
display: inline-block;
|
||||
padding: 0px 0px 1px 1px ;
|
||||
background-color: #666;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
.matrix * {
|
||||
font-size:0;
|
||||
}
|
||||
.c {
|
||||
margin:1px 1px 0px 0px;
|
||||
display: inline-block;
|
||||
background-color: #fff;
|
||||
height:10px;
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.x {
|
||||
background-color: #000;
|
||||
}
|
||||
|
||||
.header {
|
||||
}
|
||||
|
||||
.data input, .data textarea {
|
||||
margin-top: 1em;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.actions {
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
|
||||
var ink, pressed, ev;
|
||||
function mousedown(e) {
|
||||
c = window.event.target;
|
||||
classes = c.className.split(" ");
|
||||
if (classes.indexOf("c")<0) {
|
||||
return;
|
||||
}
|
||||
ink = classes.indexOf("x")<0;
|
||||
pressed = true;
|
||||
ev = e;
|
||||
enter(e);
|
||||
}
|
||||
|
||||
function mouseup(e) {
|
||||
ev = e;
|
||||
pressed = false;
|
||||
}
|
||||
|
||||
function enter(e) {
|
||||
if (!pressed) {
|
||||
return;
|
||||
}
|
||||
ev = e;
|
||||
c = window.event.target;
|
||||
paint(c, ink);
|
||||
stringFromMatrix();
|
||||
}
|
||||
<head>
|
||||
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
|
||||
<script src="translations_commons.js"></script>
|
||||
<title>TS100 Bitmap Editor</title>
|
||||
<style id="styles">
|
||||
.matrix {
|
||||
display: inline-block;
|
||||
padding: 0px 0px 1px 1px;
|
||||
background-color: #666;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
function paint(c, ink) {
|
||||
var cellInk = isInk(c);
|
||||
if (ink) {
|
||||
if (!cellInk) {
|
||||
c.className += " x";
|
||||
}
|
||||
} else {
|
||||
if (cellInk) {
|
||||
c.className = "c";
|
||||
}
|
||||
}
|
||||
}
|
||||
.matrix * {
|
||||
font-size: 0;
|
||||
}
|
||||
.r {
|
||||
white-space: nowrap;
|
||||
}
|
||||
.c {
|
||||
margin: 1px 1px 0px 0px;
|
||||
display: inline-block;
|
||||
background-color: #fff;
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
function isInk(c) {
|
||||
try {
|
||||
var classes = c.className.split(" ");
|
||||
return classes.indexOf("x") >= 0;
|
||||
} catch(e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function getMatrix() {
|
||||
return document.getElementById("matrix");
|
||||
}
|
||||
|
||||
function getCoordinatesFromId(str) {
|
||||
i = str.indexOf('_');
|
||||
return {
|
||||
row: parseInt(str.substring(1, i)),
|
||||
col: parseInt(str.substring(i+1))
|
||||
}
|
||||
}
|
||||
.x {
|
||||
background-color: #000;
|
||||
}
|
||||
|
||||
function clearMatrix() {
|
||||
for (var r = 0; r < app.matrix.rows; r++) {
|
||||
for (var c = 0; c < app.matrix.cols; c++) {
|
||||
paint(getCell(r, c), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getCell(row, col) {
|
||||
return document.getElementById("C"+row+"_"+col);
|
||||
}
|
||||
|
||||
function toMatrix(str) {
|
||||
app.encodedData = str;
|
||||
clearMatrix();
|
||||
var strs = str.split(/[ ,]/);
|
||||
var pair = false;
|
||||
var c = 0;
|
||||
var rs = 7;
|
||||
for (var i = 0; i<strs.length; i++) {
|
||||
var d = strs[i];
|
||||
if (d.length > 0) {
|
||||
if (startsWith(d, "0x")) {
|
||||
v = parseInt(d.substring(2), 16);
|
||||
} else {
|
||||
v = parseInt(d);
|
||||
}
|
||||
sv = padLeft(v.toString(2), "0", 8);
|
||||
for (r = 0; r < 8; r++) {
|
||||
paint(getCell(rs - r, c), sv.charAt(r) == '1');
|
||||
}
|
||||
c++;
|
||||
if (c >= app.matrix.cols) {
|
||||
c = 0;
|
||||
rs += 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
stringFromMatrix(true, false);
|
||||
}
|
||||
|
||||
function escapedToMatrix(str) {
|
||||
app.encodedEscapeSequence = str;
|
||||
clearMatrix();
|
||||
var strs = str.split("\\x");
|
||||
var c = 0;
|
||||
var rs = 7;
|
||||
for (var i = 0; i<strs.length; i++) {
|
||||
var d = strs[i];
|
||||
if (d.length > 0) {
|
||||
v = parseInt(d, 16);
|
||||
sv = padLeft(v.toString(2), "0", 8);
|
||||
for (r = 0; r < 8; r++) {
|
||||
paint(getCell(rs - r, c), sv.charAt(r) == '1');
|
||||
}
|
||||
c++;
|
||||
if (c >= app.matrix.cols) {
|
||||
c = 0;
|
||||
rs += 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
stringFromMatrix(false, true);
|
||||
}
|
||||
.header {
|
||||
}
|
||||
|
||||
function stringFromMatrix(skipEncodedData, skipEncodedEscapeSequence) {
|
||||
var str = "";
|
||||
var strEscaped = "";
|
||||
var delim = "";
|
||||
var blocks = app.matrix.rows / 8;
|
||||
var rs = 7;
|
||||
for (var block = 0; block < blocks; block++) {
|
||||
for (var c = 0; c < app.matrix.cols; c++) {
|
||||
var b = 0;
|
||||
for (var r = 0; r < 8; r++) {
|
||||
var cell = document.getElementById("C"+(rs-r)+"_"+c);
|
||||
if (isInk(cell)) {
|
||||
b |= (1 << (7-r));
|
||||
}
|
||||
}
|
||||
str += delim + "0x" + padLeft(b.toString(16).toUpperCase(), "0", 2);
|
||||
strEscaped += "\\x" + padLeft(b.toString(16).toUpperCase(), "0", 2);
|
||||
delim = ",";
|
||||
}
|
||||
rs += 8;
|
||||
}
|
||||
if (!skipEncodedData) {
|
||||
app.encodedData = str;
|
||||
}
|
||||
if (!skipEncodedEscapeSequence) {
|
||||
app.encodedEscapeSequence = strEscaped;
|
||||
}
|
||||
return str;
|
||||
}
|
||||
|
||||
function start() {
|
||||
app = new Vue({
|
||||
el : '#app',
|
||||
data : {
|
||||
matrix: {
|
||||
cols: 12,
|
||||
rows: 16
|
||||
},
|
||||
type: "big",
|
||||
encodedData: "",
|
||||
encodedEscapeSequence: "",
|
||||
},
|
||||
methods : {
|
||||
VtoMatrix : function(val) {
|
||||
toMatrix(val);
|
||||
},
|
||||
escapedToMatrix : function(val) {
|
||||
escapedToMatrix(val);
|
||||
},
|
||||
|
||||
VchangeSize : function() {
|
||||
if (app.type == "big") {
|
||||
app.matrix.cols = 12;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "small") {
|
||||
app.matrix.cols = 6;
|
||||
app.matrix.rows = 8;
|
||||
} else if (app.type == "icon") {
|
||||
app.matrix.cols = 16;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "icon24") {
|
||||
app.matrix.cols = 24;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "screen") {
|
||||
app.matrix.cols = 84;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "fullscreen") {
|
||||
app.matrix.cols = 96;
|
||||
app.matrix.rows = 16;
|
||||
}
|
||||
stringFromMatrix();
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
toMatrix("0x00,0xF0,0x08,0x0E,0x02,0x02,0x02,0x02,0x0E,0x08,0xF0,0x00,0x00,0x3F,0x40,0x5C,0x5C,0x5C,0x5C,0x5C,0x5C,0x40,0x3F,0x00");
|
||||
}
|
||||
.data input,
|
||||
.data textarea {
|
||||
margin-top: 1em;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
window.onload=start;
|
||||
</script>
|
||||
.actions {
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
var ink, pressed, ev;
|
||||
function mousedown(e) {
|
||||
c = window.event.target;
|
||||
classes = c.className.split(" ");
|
||||
if (classes.indexOf("c") < 0) {
|
||||
return;
|
||||
}
|
||||
ink = classes.indexOf("x") < 0;
|
||||
pressed = true;
|
||||
ev = e;
|
||||
enter(e);
|
||||
}
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div id="app">
|
||||
<div class="header">
|
||||
<select v-model="type" v-on:change="VchangeSize()">
|
||||
<option value="small">Small Font (6x8)</option>
|
||||
<option value="big">Big Font (12x16)</option>
|
||||
<option value="icon">Icon (16x16)</option>
|
||||
<option value="icon24">Icon (24x16)</option>
|
||||
<option value="screen">Screen (84x16)</option>
|
||||
<option value="fullscreen">Full Screen (96x16)</option>
|
||||
</select>
|
||||
</div>
|
||||
<div id="matrix" class="matrix" onmousedown="mousedown(this)" onmouseup="mouseup(this)" ondragstart="return false">
|
||||
<div :id="'R'+(r-1)" class="r" v-for="r in matrix.rows">
|
||||
<div :id="'C'+(r-1)+'_'+(c-1)" class="c" onmouseenter="enter(this)" v-for="c in matrix.cols"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<input type="button" value="Clear" onclick="clearMatrix();stringFromMatrix()">
|
||||
</div>
|
||||
<div class="data">
|
||||
<textarea v-model="encodedData" style="width:100%" v-on:change="VtoMatrix(encodedData)" rows=5></textarea>
|
||||
<textarea v-model="encodedEscapeSequence" style="width:100%" v-on:change="escapedToMatrix(encodedEscapeSequence)" rows=5></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
function mouseup(e) {
|
||||
ev = e;
|
||||
pressed = false;
|
||||
}
|
||||
|
||||
function enter(e) {
|
||||
if (!pressed) {
|
||||
return;
|
||||
}
|
||||
ev = e;
|
||||
c = window.event.target;
|
||||
paint(c, ink);
|
||||
stringFromMatrix();
|
||||
}
|
||||
|
||||
function paint(c, ink) {
|
||||
var cellInk = isInk(c);
|
||||
if (ink) {
|
||||
if (!cellInk) {
|
||||
c.className += " x";
|
||||
}
|
||||
} else {
|
||||
if (cellInk) {
|
||||
c.className = "c";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function isInk(c) {
|
||||
try {
|
||||
var classes = c.className.split(" ");
|
||||
return classes.indexOf("x") >= 0;
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function getMatrix() {
|
||||
return document.getElementById("matrix");
|
||||
}
|
||||
|
||||
function getCoordinatesFromId(str) {
|
||||
i = str.indexOf("_");
|
||||
return {
|
||||
row: parseInt(str.substring(1, i)),
|
||||
col: parseInt(str.substring(i + 1)),
|
||||
};
|
||||
}
|
||||
|
||||
function clearMatrix() {
|
||||
for (var r = 0; r < app.matrix.rows; r++) {
|
||||
for (var c = 0; c < app.matrix.cols; c++) {
|
||||
paint(getCell(r, c), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function invertMatrix() {
|
||||
for (var r = 0; r < app.matrix.rows; r++) {
|
||||
for (var c = 0; c < app.matrix.cols; c++) {
|
||||
cell = getCell(r, c);
|
||||
if (isInk(cell) == true) paint(cell, false);
|
||||
else paint(cell, true);
|
||||
}
|
||||
}
|
||||
stringFromMatrix();
|
||||
}
|
||||
|
||||
function getCell(row, col) {
|
||||
return document.getElementById("C" + row + "_" + col);
|
||||
}
|
||||
|
||||
function toMatrix(str) {
|
||||
app.encodedData = str;
|
||||
clearMatrix();
|
||||
var strs = str.split(/[ ,]/);
|
||||
var pair = false;
|
||||
var c = 0;
|
||||
var rs = 7;
|
||||
for (var i = 0; i < strs.length; i++) {
|
||||
var d = strs[i];
|
||||
if (d.length > 0) {
|
||||
if (startsWith(d, "0x")) {
|
||||
v = parseInt(d.substring(2), 16);
|
||||
} else {
|
||||
v = parseInt(d);
|
||||
}
|
||||
sv = padLeft(v.toString(2), "0", 8);
|
||||
for (r = 0; r < 8; r++) {
|
||||
paint(getCell(rs - r, c), sv.charAt(r) == "1");
|
||||
}
|
||||
c++;
|
||||
if (c >= app.matrix.cols) {
|
||||
c = 0;
|
||||
rs += 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
stringFromMatrix(true, false);
|
||||
}
|
||||
|
||||
function escapedToMatrix(str) {
|
||||
app.encodedEscapeSequence = str;
|
||||
clearMatrix();
|
||||
var strs = str.split("\\x");
|
||||
var c = 0;
|
||||
var rs = 7;
|
||||
for (var i = 0; i < strs.length; i++) {
|
||||
var d = strs[i];
|
||||
if (d.length > 0) {
|
||||
v = parseInt(d, 16);
|
||||
sv = padLeft(v.toString(2), "0", 8);
|
||||
for (r = 0; r < 8; r++) {
|
||||
paint(getCell(rs - r, c), sv.charAt(r) == "1");
|
||||
}
|
||||
c++;
|
||||
if (c >= app.matrix.cols) {
|
||||
c = 0;
|
||||
rs += 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
stringFromMatrix(false, true);
|
||||
}
|
||||
|
||||
// Rather than trying to figure these crazy cells/matrix, we just
|
||||
// slurp up the encoded string at the end. It's updated on every
|
||||
// pixl change, redraw, and load so just slipping into
|
||||
// stringFromMatrix is tacky, but seemss to catch all our refreshes.
|
||||
//
|
||||
// The string is CSV hex, with the first byte being the first column,
|
||||
// and bit zero being the UL corner. Second byte is second column, etc.
|
||||
// app.matrix.{cols,rows} is set by the drawing code to size the
|
||||
// image for a character, an icon, or the full screen image. This
|
||||
// code adapts resizing from that.
|
||||
// INVERT is handled by the code above us, our fill/clearRect handles
|
||||
// that.
|
||||
function updateCanvas(buf) {
|
||||
// Number of squared canvas pixels to image pixels;
|
||||
var scale = 1;
|
||||
|
||||
var c = document.getElementById("myCanvas");
|
||||
var context = c.getContext("2d");
|
||||
context.fillRect(0, 0, c.width, c.height);
|
||||
|
||||
if (c.width != app.matrix.cols || c.height != app.matrix.rows) {
|
||||
c.width = app.matrix.cols * scale;
|
||||
c.height = app.matrix.rows * scale;
|
||||
}
|
||||
context.clearRect(0, 0, c.width, c.height);
|
||||
|
||||
var a = buf.split(",");
|
||||
var x = 0;
|
||||
var y = 0;
|
||||
|
||||
for (var e = 0; e < a.length; e++) {
|
||||
byte = parseInt(a[e], 16);
|
||||
for (var bit = 0; bit < 8; bit++) {
|
||||
// debug.innerHTML+= e + ": " + x + "/" + y + " " + a.length + "</br>";
|
||||
// debug.innerHTML+= app.matrix.cols + "</br>";
|
||||
if (x > c.cols) {
|
||||
throw "write past right of canvas";
|
||||
}
|
||||
if (x > c.rows) {
|
||||
throw "write past bottom of canvas";
|
||||
}
|
||||
if (byte & (1 << bit)) {
|
||||
// FillRect give better B&W image
|
||||
if (scale > 1) {
|
||||
context.moveTo(x, y);
|
||||
context.lineWidth = scale;
|
||||
context.lineTo(x + scale, y);
|
||||
} else {
|
||||
context.beginPath();
|
||||
context.fillRect(x, y, 1, 1);
|
||||
context.fill();
|
||||
}
|
||||
}
|
||||
y += scale;
|
||||
}
|
||||
y -= 8 * scale;
|
||||
x += scale;
|
||||
if (x == app.matrix.cols * scale) {
|
||||
x = 0;
|
||||
y = 8 * scale;
|
||||
}
|
||||
// debug.innerHTML+= x + " " + x/app.matrix.cols + " " + y + "</br>";
|
||||
// debug.innerHTML+=byte + "</br>";
|
||||
}
|
||||
|
||||
context.strokeStyle = "black";
|
||||
context.stroke();
|
||||
return c;
|
||||
}
|
||||
|
||||
function makePNG() {
|
||||
var canvas = document.getElementById("myCanvas");
|
||||
//var context = c.getContext("2d");
|
||||
//window.location = canvas.toDataURL("image/png");
|
||||
///var image = canvas.toDataURL("image/png");
|
||||
// document.write('<img src="'+image+'"/>');
|
||||
var image = canvas
|
||||
.toDataURL("image/png")
|
||||
.replace("image/png", "image/octet-stream");
|
||||
window.location.href = image;
|
||||
}
|
||||
|
||||
function stringFromMatrix(skipEncodedData, skipEncodedEscapeSequence) {
|
||||
var str = "";
|
||||
var strEscaped = "";
|
||||
var delim = "";
|
||||
var blocks = app.matrix.rows / 8;
|
||||
var rs = 7;
|
||||
for (var block = 0; block < blocks; block++) {
|
||||
for (var c = 0; c < app.matrix.cols; c++) {
|
||||
var b = 0;
|
||||
for (var r = 0; r < 8; r++) {
|
||||
var cell = document.getElementById("C" + (rs - r) + "_" + c);
|
||||
if (isInk(cell)) {
|
||||
b |= 1 << (7 - r);
|
||||
}
|
||||
}
|
||||
str += delim + "0x" + padLeft(b.toString(16).toUpperCase(), "0", 2);
|
||||
strEscaped += "\\x" + padLeft(b.toString(16).toUpperCase(), "0", 2);
|
||||
delim = ",";
|
||||
}
|
||||
rs += 8;
|
||||
}
|
||||
if (!skipEncodedData) {
|
||||
app.encodedData = str;
|
||||
}
|
||||
if (!skipEncodedEscapeSequence) {
|
||||
app.encodedEscapeSequence = strEscaped;
|
||||
}
|
||||
updateCanvas(str);
|
||||
return str;
|
||||
}
|
||||
|
||||
function start() {
|
||||
app = new Vue({
|
||||
el: "#app",
|
||||
data: {
|
||||
matrix: {
|
||||
cols: 12,
|
||||
rows: 16,
|
||||
},
|
||||
type: "big",
|
||||
encodedData: "",
|
||||
encodedEscapeSequence: "",
|
||||
},
|
||||
methods: {
|
||||
VtoMatrix: function (val) {
|
||||
toMatrix(val);
|
||||
},
|
||||
escapedToMatrix: function (val) {
|
||||
escapedToMatrix(val);
|
||||
},
|
||||
|
||||
VchangeSize: function () {
|
||||
if (app.type == "big") {
|
||||
app.matrix.cols = 12;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "small") {
|
||||
app.matrix.cols = 6;
|
||||
app.matrix.rows = 8;
|
||||
} else if (app.type == "icon") {
|
||||
app.matrix.cols = 16;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "icon24") {
|
||||
app.matrix.cols = 24;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "screen") {
|
||||
app.matrix.cols = 84;
|
||||
app.matrix.rows = 16;
|
||||
} else if (app.type == "fullscreen") {
|
||||
app.matrix.cols = 96;
|
||||
app.matrix.rows = 16;
|
||||
}
|
||||
stringFromMatrix();
|
||||
},
|
||||
},
|
||||
});
|
||||
toMatrix(
|
||||
"0x00,0xF0,0x08,0x0E,0x02,0x02,0x02,0x02,0x0E,0x08,0xF0,0x00,0x00,0x3F,0x40,0x5C,0x5C,0x5C,0x5C,0x5C,0x5C,0x40,0x3F,0x00"
|
||||
);
|
||||
}
|
||||
|
||||
var margins = 1;
|
||||
|
||||
function changesize(x) {
|
||||
var cursize = x;
|
||||
var mg;
|
||||
if (x < 6) mg = 0;
|
||||
else mg = 1;
|
||||
// var elements = document.getElementsByClassName('c');
|
||||
// for (var i=0; i<elements.length;i++){
|
||||
// elements.item(i).style="height: "+x+"px; width: "+x+"px;"+mg;
|
||||
// }
|
||||
styles.sheet.rules[3].style.height = x + "px";
|
||||
styles.sheet.rules[3].style.width = x + "px";
|
||||
styles.sheet.rules[3].style.marginRight = mg + "px";
|
||||
styles.sheet.rules[3].style.marginTop = mg + "px";
|
||||
styles.sheet.rules[0].style.paddingLeft = mg + "px";
|
||||
styles.sheet.rules[0].style.paddingBottom = mg + "px";
|
||||
}
|
||||
|
||||
function importFile() {
|
||||
var input, file, fr;
|
||||
input = document.getElementById("fileinput");
|
||||
if (input.files[0]) {
|
||||
file = input.files[0];
|
||||
fr = new FileReader();
|
||||
fr.onload = processData;
|
||||
fr.readAsBinaryString(file);
|
||||
}
|
||||
function processData() {
|
||||
var pushy, data, aB, bS;
|
||||
pushy = [];
|
||||
// bodyAppend("p","processing data");
|
||||
data = fr.result;
|
||||
for (i = 297; i < 297 + 192; i += 2) {
|
||||
aB = data.charCodeAt(i + 1);
|
||||
bS = aB.toString(16);
|
||||
if (bS.length < 2) bS = "0" + bS;
|
||||
pushy.push(bS);
|
||||
aB = data.charCodeAt(i);
|
||||
bS = aB.toString(16);
|
||||
if (bS.length < 2) bS = "0" + bS;
|
||||
pushy.push(bS);
|
||||
}
|
||||
escapedToMatrix("\\x" + pushy.join("\\x"));
|
||||
// bodyAppend("p","\\x"+pushy.join("\\x"));
|
||||
}
|
||||
}
|
||||
function bodyAppend(tagName, innerHTML) {
|
||||
var elm;
|
||||
|
||||
elm = document.createElement(tagName);
|
||||
elm.innerHTML = innerHTML;
|
||||
document.body.appendChild(elm);
|
||||
}
|
||||
|
||||
window.onload = start;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app">
|
||||
<div class="header">
|
||||
<select v-model="type" v-on:change="VchangeSize()">
|
||||
<option value="small">Small Font (6x8)</option>
|
||||
<option value="big">Big Font (12x16)</option>
|
||||
<option value="icon">Icon (16x16)</option>
|
||||
<option value="icon24">Icon (24x16)</option>
|
||||
<option value="screen">Screen (84x16)</option>
|
||||
<option value="fullscreen">Full Screen (96x16)</option>
|
||||
</select>
|
||||
<a href="#" onclick="changesize(1);">1x</a>
|
||||
<a href="#" onclick="changesize(2);">2x</a>
|
||||
<a href="#" onclick="changesize(4);">4x</a>
|
||||
<a href="#" onclick="changesize(8);">8x</a>
|
||||
<a href="#" onclick="changesize(10);">10x</a>
|
||||
<a href="#" onclick="changesize(12);">12x</a>
|
||||
<a href="#" onclick="changesize(16);">16x</a>
|
||||
<a href="#" onclick="changesize(32);">32x</a>
|
||||
<a href="#" onclick="invertMatrix();">INVERT!</a>
|
||||
</div>
|
||||
<div
|
||||
id="matrix"
|
||||
class="matrix"
|
||||
onmousedown="mousedown(this)"
|
||||
onmouseup="mouseup(this)"
|
||||
ondragstart="return false"
|
||||
>
|
||||
<div :id="'R'+(r-1)" class="r" v-for="r in matrix.rows">
|
||||
<div
|
||||
:id="'C'+(r-1)+'_'+(c-1)"
|
||||
class="c"
|
||||
onmouseenter="enter(this)"
|
||||
v-for="c in matrix.cols"
|
||||
></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<input
|
||||
type="button"
|
||||
value="Clear"
|
||||
onclick="clearMatrix();stringFromMatrix()"
|
||||
/>
|
||||
</div>
|
||||
<div class="data">
|
||||
<textarea
|
||||
v-model="encodedData"
|
||||
style="width: 100%"
|
||||
v-on:change="VtoMatrix(encodedData)"
|
||||
rows="5"
|
||||
></textarea>
|
||||
<textarea
|
||||
v-model="encodedEscapeSequence"
|
||||
style="width: 100%"
|
||||
v-on:change="escapedToMatrix(encodedEscapeSequence)"
|
||||
rows="5"
|
||||
></textarea>
|
||||
</div>
|
||||
|
||||
<form action="#" onsubmit="return false;">
|
||||
<input type="file" id="fileinput" />
|
||||
<input
|
||||
type="button"
|
||||
id="btnLoad"
|
||||
value="Import"
|
||||
onclick="importFile();"
|
||||
/>
|
||||
(Remember to set correct canvas size before importing)
|
||||
</form>
|
||||
<br />
|
||||
|
||||
<canvas
|
||||
id="myCanvas"
|
||||
width="96"
|
||||
height="16"
|
||||
style="border: 1px dotted #000000; padding: 10px"
|
||||
>
|
||||
</canvas>
|
||||
|
||||
<form>
|
||||
<input type="button" value="Make PNG" onclick="makePNG();" />
|
||||
</form>
|
||||
|
||||
<div id="debug"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -326,6 +326,70 @@ def get_font_map_latin_extended() -> Dict[str, bytes]:
|
||||
return font
|
||||
|
||||
|
||||
def get_font_map_greek() -> Dict[str, bytes]:
|
||||
font = {
|
||||
# U+0370..U+03FF Greek and Coptic
|
||||
"Έ": b"\x06\xFC\xFC\x8C\x8C\x8C\x8C\x8C\x8C\x0C\x0C\x00\x00\x3F\x3F\x31\x31\x31\x31\x31\x31\x30\x30\x00",
|
||||
"Α": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x06\x06\x06\x06\x07\x3F\x38\x00",
|
||||
"Β": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xE7\xFE\xBC\x00\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x39\x1F\x0F\x00",
|
||||
"Γ": b"\x00\xFF\xFF\x03\x03\x03\x03\x03\x03\x03\x03\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x00\x00\x00",
|
||||
"Δ": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x37\x30\x30\x30\x30\x37\x3F\x38\x00",
|
||||
"Ε": b"\x00\xFF\xFF\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x3F\x3F\x30\x30\x30\x30\x30\x30\x30\x30\x00",
|
||||
"Ζ": b"\x00\x03\x03\x03\x03\xC3\xE3\x33\x1F\x0F\x03\x00\x00\x30\x3C\x3E\x33\x31\x30\x30\x30\x30\x30\x00",
|
||||
"Η": b"\x00\xFF\xFF\xC0\xC0\xC0\xC0\xC0\xC0\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
|
||||
"Θ": b"\x00\xF0\xFC\x0E\xC7\xC3\xC3\xC7\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
|
||||
"Ι": b"\x00\x00\x00\x03\x03\xFF\xFF\x03\x03\x00\x00\x00\x00\x00\x00\x30\x30\x3F\x3F\x30\x30\x00\x00\x00",
|
||||
"Κ": b"\x00\xFF\xFF\xC0\xE0\xF0\x38\x1C\x0E\x07\x03\x00\x00\x3F\x3F\x00\x01\x03\x07\x0E\x1C\x38\x30\x00",
|
||||
"Λ": b"\x00\x00\x00\xE0\xFC\x1F\x1F\xFC\xE0\x00\x00\x00\x00\x38\x3F\x07\x00\x00\x00\x00\x07\x3F\x38\x00",
|
||||
"Μ": b"\x00\xFF\xFF\x1E\x78\xE0\xE0\x78\x1E\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x01\x01\x00\x00\x3F\x3F\x00",
|
||||
"Ν": b"\x00\xFF\xFF\x0E\x38\xF0\xC0\x00\x00\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x03\x07\x1C\x3F\x3F\x00",
|
||||
"Ξ": b"\x00\x03\x03\xC3\xC3\xC3\xC3\xC3\xC3\x03\x03\x00\x00\x30\x30\x30\x30\x30\x30\x30\x30\x30\x30\x00",
|
||||
"Ο": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x03\x0F\x1C\x38\x30\x30\x38\x1C\x0F\x03\x00",
|
||||
"Π": b"\x00\xFF\xFF\x03\x03\x03\x03\x03\x03\xFF\xFF\x00\x00\x3F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00",
|
||||
"Ρ": b"\x00\xFF\xFF\x83\x83\x83\x83\x83\xC7\xFE\x7C\x00\x00\x3F\x3F\x01\x01\x01\x01\x01\x01\x00\x00\x00",
|
||||
"Σ": b"\x00\x03\x0F\x1F\x33\xE3\xE3\x03\x03\x03\x03\x00\x00\x30\x3C\x3E\x33\x31\x30\x30\x30\x30\x30\x00",
|
||||
"Τ": b"\x00\x03\x03\x03\x03\xFF\xFF\x03\x03\x03\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
|
||||
"Υ": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
|
||||
"Φ": b"\x00\xF8\xFC\x0E\x06\xFF\xFF\x06\x0E\xFC\xF8\x00\x00\x03\x07\x0E\x0C\x3F\x3F\x0C\x0E\x07\x03\x00",
|
||||
"Χ": b"\x00\x03\x0F\x3C\xF0\xC0\xC0\xF0\x3C\x0F\x03\x00\x00\x30\x3C\x0F\x03\x00\x00\x03\x0F\x3C\x30\x00",
|
||||
"Ψ": b"\x00\x3F\x7F\xE0\xC0\xFF\xFF\xC0\xE0\x7F\x3F\x00\x00\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x00\x00",
|
||||
"Ω": b"\x00\xF0\xFC\x0E\x07\x03\x03\x07\x0E\xFC\xF0\x00\x00\x63\x6F\x7C\x70\x00\x00\x70\x7C\x6F\x63\x00",
|
||||
"ά": b"\x00\x80\xC0\xE0\x60\x6C\x6E\x66\xC0\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x20",
|
||||
"έ": b"\x00\xE0\xF0\x30\x30\x36\x37\x33\x30\x70\x60\x00\x00\x1D\x3F\x33\x33\x33\x33\x33\x33\x38\x18\x00",
|
||||
"ή": b"\x00\xE0\xE0\xC0\x60\x6C\x6E\xE6\xE0\xC0\x00\x00\x00\x1F\x1F\x00\x00\x00\x00\x00\x7F\x7F\x00\x00",
|
||||
"ί": b"\x00\x00\x00\xEC\xEE\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x00\x00\x00\x00",
|
||||
"α": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\xC0\xE0\xE0\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x18\x3F\x3F\x20",
|
||||
"β": b"\x00\x00\xC0\xE0\x30\x10\x10\x30\xE0\xC0\x00\x00\x00\x00\xFF\xFF\x21\x21\x21\x33\x3F\x1E\x00\x00",
|
||||
"γ": b"\x00\x60\xE0\x80\x00\x00\x00\x00\x80\xE0\x60\x00\x00\x00\x01\x07\x1E\xF8\xF8\x1E\x07\x01\x00\x00",
|
||||
"δ": b"\x00\x83\xC7\xEF\x7F\x7B\x73\x63\xE3\xC3\x83\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
|
||||
"ε": b"\x00\xE0\xF0\x30\x30\x30\x30\x30\x30\x70\x60\x00\x00\x1D\x3F\x33\x33\x33\x33\x33\x33\x38\x18\x00",
|
||||
"ζ": b"\x00\x83\xC3\xE3\x63\x63\x63\x73\x3F\x1F\x00\x00\x00\x0F\x1F\x38\x30\x30\x30\xF0\xE0\x00\x00\x00",
|
||||
"η": b"\x00\xE0\xE0\xC0\x60\x60\x60\xE0\xE0\xC0\x00\x00\x00\x1F\x1F\x00\x00\x00\x00\x00\x7F\x7F\x00\x00",
|
||||
"θ": b"\x00\xF0\xF8\x1C\x8C\x8C\x8C\x8C\x1C\xF8\xF0\x00\x00\x0F\x1F\x38\x31\x31\x31\x31\x38\x1F\x0F\x00",
|
||||
"ι": b"\x00\x00\x00\xE0\xE0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x00\x00\x00\x00",
|
||||
"κ": b"\x00\x00\xC0\xC0\x00\x00\x80\xC0\xC0\x00\x00\x00\x00\x00\x3F\x3F\x06\x0F\x1F\x39\x30\x00\x00\x00",
|
||||
"λ": b"\x00\x00\x00\x00\xC0\xE0\xE0\xC0\x00\x00\x00\x00\x00\x30\x3C\x0F\x03\x00\x00\x03\x0F\x3C\x30\x00",
|
||||
"μ": b"\x00\xF0\xF0\x00\x00\x00\x00\x00\xF0\xF0\x00\x00\x00\xFF\xFF\x0E\x0C\x0C\x0C\x06\x0F\x0F\x00\x00",
|
||||
"ν": b"\x00\x60\xE0\x80\x00\x00\x00\x00\x80\xE0\x60\x00\x00\x00\x01\x07\x1E\x38\x38\x1E\x07\x01\x00\x00",
|
||||
"ξ": b"\x00\x3C\xFE\xE7\xC3\xC3\xC3\xC3\x00\x00\x00\x00\x00\x0F\x1F\x39\x30\x30\xF0\xE0\x00\x00\x00\x00",
|
||||
"ο": b"\x00\x80\xC0\xE0\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
|
||||
"π": b"\x00\x60\xE0\xE0\x60\x60\x60\xE0\xE0\x60\x00\x00\x00\x00\x3F\x3F\x00\x00\x00\x3F\x3F\x30\x00\x00",
|
||||
"ρ": b"\x00\xE0\xE0\x60\x60\x60\x60\x60\xE0\xC0\x80\x00\x00\xFF\xFF\x0C\x18\x18\x18\x18\x1C\x0F\x07\x00",
|
||||
"ς": b"\x00\x80\xC0\xE0\x60\x60\x60\xE0\xC0\x80\x00\x00\x00\x0F\x1F\x38\x30\x30\xF0\xE0\x03\x03\x00\x00",
|
||||
"σ": b"\x00\x80\xC0\xE0\x60\x60\x60\xE0\xE0\xE0\x60\x00\x00\x0F\x1F\x38\x30\x30\x30\x38\x1F\x0F\x00\x00",
|
||||
"τ": b"\x00\x60\x60\xE0\xE0\x60\x60\x60\x00\x00\x00\x00\x00\x00\x00\x1F\x3F\x30\x30\x30\x00\x00\x00\x00",
|
||||
"υ": b"\x00\xE0\xE0\x00\x00\x00\x00\x00\xE0\xE0\x00\x00\x00\x0F\x1F\x38\x30\x30\x30\x38\x1F\x0F\x00\x00",
|
||||
"φ": b"\x00\xC0\xE0\x70\x30\xF8\xF8\x30\x70\xE0\xC0\x00\x00\x07\x0F\x1C\x18\x7F\x7F\x18\x1C\x0F\x07\x00",
|
||||
"χ": b"\x00\x70\xF0\xC0\x80\x00\x80\xC0\xF0\x70\x00\x00\x00\x70\x78\x1D\x0F\x07\x0F\x1D\x78\x70\x00\x00",
|
||||
"ψ": b"\x00\xE0\xE0\x00\x00\xE0\xE0\x00\x00\xE0\xE0\x00\x00\x07\x0F\x1C\x18\x7F\x7F\x18\x1C\x0F\x07\x00",
|
||||
"ω": b"\x00\xC0\xE0\x00\x00\x00\x00\x00\x00\xE0\xC0\x00\x00\x0F\x1F\x38\x38\x1E\x1E\x38\x38\x1F\x0F\x00",
|
||||
"ό": b"\x00\x80\xC0\xE0\x60\x6C\x6E\x66\xE0\xC0\x80\x00\x00\x0F\x1F\x38\x30\x30\x30\x30\x38\x1F\x0F\x00",
|
||||
"ύ": b"\x00\xE0\xE0\x00\x00\x0C\x0E\x06\xE0\xE0\x00\x00\x00\x0F\x1F\x38\x30\x30\x30\x38\x1F\x0F\x00\x00",
|
||||
"ώ": b"\x00\xC0\xE0\x00\x00\x18\x1C\x0C\x00\xE0\xC0\x00\x00\x0F\x1F\x38\x38\x1E\x1E\x38\x38\x1F\x0F\x00",
|
||||
}
|
||||
return font
|
||||
|
||||
|
||||
def get_font_map_cyrillic() -> Dict[str, bytes]:
|
||||
font = {
|
||||
# U+0400..U+04FF Cyrillic
|
||||
@@ -750,6 +814,70 @@ def get_small_font_map_latin_extended() -> Dict[str, bytes]:
|
||||
return font
|
||||
|
||||
|
||||
def get_small_font_map_greek() -> Dict[str, bytes]:
|
||||
font = {
|
||||
# U+0370..U+03FF Greek and Coptic
|
||||
"Έ": b"\x03\x7F\x49\x49\x49\x41",
|
||||
"Α": b"\x7e\x09\x09\x09\x7e\x00",
|
||||
"Β": b"\x7f\x49\x49\x49\x36\x00",
|
||||
"Γ": b"\x7f\x01\x01\x01\x01\x00",
|
||||
"Δ": b"\x70\x4C\x43\x4C\x70\x00",
|
||||
"Ε": b"\x7f\x49\x49\x49\x41\x00",
|
||||
"Ζ": b"\x61\x51\x49\x45\x43\x00",
|
||||
"Η": b"\x7f\x08\x08\x08\x7f\x00",
|
||||
"Θ": b"\x3E\x49\x49\x49\x3E\x00",
|
||||
"Ι": b"\x00\x41\x7f\x41\x00\x00",
|
||||
"Κ": b"\x7f\x08\x14\x22\x41\x00",
|
||||
"Λ": b"\x70\x0C\x03\x0C\x70\x00",
|
||||
"Μ": b"\x7f\x02\x0c\x02\x7f\x00",
|
||||
"Ν": b"\x7f\x04\x08\x10\x7f\x00",
|
||||
"Ξ": b"\x41\x49\x49\x49\x41\x00",
|
||||
"Ο": b"\x3e\x41\x41\x41\x3e\x00",
|
||||
"Π": b"\x7F\x01\x01\x01\x7F\x00",
|
||||
"Ρ": b"\x7f\x09\x09\x09\x06\x00",
|
||||
"Σ": b"\x63\x55\x49\x41\x41\x00",
|
||||
"Τ": b"\x01\x01\x7f\x01\x01\x00",
|
||||
"Υ": b"\x07\x08\x70\x08\x07\x00",
|
||||
"Φ": b"\x0c\x12\x7f\x12\x0c\x00",
|
||||
"Χ": b"\x63\x14\x08\x14\x63\x00",
|
||||
"Ψ": b"\x07\x08\x7F\x08\x07\x00",
|
||||
"Ω": b"\x5E\x61\x01\x61\x5E\x00",
|
||||
"ά": b"\x38\x45\x45\x38\x7C\x40",
|
||||
"έ": b"\x28\x55\x55\x44\x28\x00",
|
||||
"ή": b"\x04\x79\x05\x04\xF8\x00",
|
||||
"ί": b"\x04\x3D\x41\x40\x00\x00",
|
||||
"α": b"\x38\x44\x44\x38\x7C\x40",
|
||||
"β": b"\x7E\x21\x25\x25\x1A\x00",
|
||||
"γ": b"\x0C\x10\x60\x10\x0C\x00",
|
||||
"δ": b"\x30\x4B\x45\x49\x30\x00",
|
||||
"ε": b"\x28\x54\x54\x44\x28\x00",
|
||||
"ζ": b"\x00\x31\x49\x45\xC3\x00",
|
||||
"η": b"\x04\x78\x04\x04\xF8\x00",
|
||||
"θ": b"\x3E\x49\x49\x49\x3E\x00",
|
||||
"ι": b"\x04\x3C\x40\x40\x00\x00",
|
||||
"κ": b"\x00\x7C\x10\x28\x44\x00",
|
||||
"λ": b"\x70\x0A\x04\x08\x70\x00",
|
||||
"μ": b"\xFC\x10\x10\x3C\x20\x00",
|
||||
"ν": b"\x1C\x20\x40\x20\x1C\x00",
|
||||
"ξ": b"\x36\x49\x49\xC9\x00\x00",
|
||||
"ο": b"\x38\x44\x44\x44\x38\x00",
|
||||
"π": b"\x04\x7C\x04\x7C\x44\x00",
|
||||
"ρ": b"\xF8\x24\x24\x24\x18\x00",
|
||||
"ς": b"\x38\x44\x44\xC4\x04\x00",
|
||||
"σ": b"\x38\x44\x44\x44\x3C\x04",
|
||||
"τ": b"\x04\x3C\x44\x44\x00\x00",
|
||||
"υ": b"\x3C\x40\x40\x40\x3C\x00",
|
||||
"φ": b"\x18\x24\x7e\x24\x18\x00",
|
||||
"χ": b"\x44\x24\x38\x48\x44\x00",
|
||||
"ψ": b"\x1C\x20\x7C\x20\x1C\x00",
|
||||
"ω": b"\x38\x44\x30\x44\x38\x00",
|
||||
"ό": b"\x38\x45\x45\x44\x38\x00",
|
||||
"ύ": b"\x3C\x41\x41\x40\x3C\x00",
|
||||
"ώ": b"\x38\x45\x31\x44\x38\x00",
|
||||
}
|
||||
return font
|
||||
|
||||
|
||||
def get_small_font_map_cyrillic() -> Dict[str, bytes]:
|
||||
font = {
|
||||
# U+0400..U+04FF Cyrillic
|
||||
@@ -859,6 +987,7 @@ NAME_ASCII_BASIC: Final = "ascii_basic"
|
||||
NAME_LATIN_EXTENDED: Final = "latin_extended"
|
||||
NAME_CYRILLIC: Final = "cyrillic"
|
||||
NAME_CJK: Final = "cjk"
|
||||
NAME_GREEK: Final = "greek"
|
||||
|
||||
|
||||
def get_font_maps_for_name(
|
||||
@@ -870,5 +999,7 @@ def get_font_maps_for_name(
|
||||
return get_font_map_latin_extended(), get_small_font_map_latin_extended()
|
||||
elif font_name == NAME_CYRILLIC:
|
||||
return get_font_map_cyrillic(), get_small_font_map_cyrillic()
|
||||
elif font_name == NAME_GREEK:
|
||||
return get_font_map_greek(), get_small_font_map_greek()
|
||||
else:
|
||||
raise ValueError("Invalid font name")
|
||||
|
||||
115
Translations/gen_menu_docs.py
Executable file
115
Translations/gen_menu_docs.py
Executable file
@@ -0,0 +1,115 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import argparse
|
||||
import functools
|
||||
import hashlib
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
from typing import Dict, List
|
||||
|
||||
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
|
||||
|
||||
HERE = Path(__file__).resolve().parent
|
||||
TRANSLATION_DEFS_PATH = os.path.join(HERE, "translations_def.js")
|
||||
ENGLISH_TRANSLATION_PATH = os.path.join(HERE, "translation_EN.json")
|
||||
MENU_DOCS_FILE_PATH = os.path.join(HERE.parent, "Documentation/Settings.md")
|
||||
|
||||
# Loading a single JSON file
|
||||
|
||||
|
||||
def load_json(filename: str, skip_first_line: bool) -> dict:
|
||||
with open(filename) as f:
|
||||
if skip_first_line:
|
||||
f.readline()
|
||||
return json.loads(f.read())
|
||||
|
||||
|
||||
def write_header(filep):
|
||||
"""
|
||||
Writes the markdown constant header area out
|
||||
"""
|
||||
constant_header = """<!-- This is an automatically generated file. DO NOT EDIT. Edit gen_menu_docs.py instead -->
|
||||
|
||||
# IronOS Settings Menu
|
||||
|
||||
The below breaks down the menu's and what each setting means.
|
||||
"""
|
||||
filep.write(constant_header)
|
||||
|
||||
|
||||
def write_menu_categories(filep, defs, translation_data):
|
||||
"""
|
||||
Writes the menu categories section out
|
||||
"""
|
||||
menu_cat_pretense = """
|
||||
## Menu Categories
|
||||
|
||||
In the menu there are a few main categories that are used to keep the list manageable.
|
||||
"""
|
||||
filep.write(menu_cat_pretense)
|
||||
for menu in defs.get("menuGroups", {}):
|
||||
menu_id = menu.get("id", "")
|
||||
entry = translation_data.get("menuGroups", {}).get(menu_id, "")
|
||||
name = " ".join(entry.get("text2", []))
|
||||
desc = menu.get("description", "")
|
||||
section = f"""
|
||||
### Category: {name}
|
||||
|
||||
{desc}
|
||||
"""
|
||||
filep.write(section)
|
||||
|
||||
|
||||
def write_menu_entries(filep, defs, translation_data):
|
||||
"""
|
||||
Writes the menu entries section out
|
||||
"""
|
||||
|
||||
menu_entries_pretense = """
|
||||
## Settings
|
||||
|
||||
These are all of the settings possible in the menu.
|
||||
**Not all settings are visible for all devices.**
|
||||
For example, the TS100 does not have USB-PD settings.
|
||||
|
||||
When using the device, if unsure you can pause (press nothing) on a setting and after a short delay help text will scroll across the screen.
|
||||
This is the "on device help text".
|
||||
"""
|
||||
filep.write(menu_entries_pretense)
|
||||
for menu in defs.get("menuOptions", {}):
|
||||
menu_id = menu.get("id", "")
|
||||
entry = translation_data.get("menuOptions", {}).get(menu_id, "")
|
||||
name = " ".join(entry.get("text2", []))
|
||||
desc = menu.get("description", "")
|
||||
on_device_desc = entry.get("desc", "")
|
||||
section = f"""
|
||||
### Setting: {name}
|
||||
|
||||
{desc}
|
||||
|
||||
On device help text:
|
||||
|
||||
{on_device_desc}
|
||||
"""
|
||||
filep.write(section)
|
||||
|
||||
|
||||
def main() -> None:
|
||||
json_dir = HERE
|
||||
print(json_dir)
|
||||
logging.info("Loading translation definitions")
|
||||
defs = load_json(TRANSLATION_DEFS_PATH, True)
|
||||
eng_translation = load_json(ENGLISH_TRANSLATION_PATH, False)
|
||||
with open(MENU_DOCS_FILE_PATH, "w") as outputf:
|
||||
write_header(outputf)
|
||||
write_menu_categories(outputf, defs, eng_translation)
|
||||
write_menu_entries(outputf, defs, eng_translation)
|
||||
logging.info("Done")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
File diff suppressed because it is too large
Load Diff
207
Translations/translation_BE.json
Normal file
207
Translations/translation_BE.json
Normal file
@@ -0,0 +1,207 @@
|
||||
{
|
||||
"languageCode": "BE",
|
||||
"languageLocalName": "Беларуская",
|
||||
"fonts": ["ascii_basic", "latin_extended", "cyrillic"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Перад тым, як працягнуць, каліласка, упэўнецеся, што джала мае комнатную тэмпературу!",
|
||||
"SettingsResetWarning": "Вы ўпэннены, што жадаеце зкінуць налады да першапачатковых значэнняў?",
|
||||
"UVLOWarningString": "НАПРУГА--",
|
||||
"UndervoltageString": "Нізкая напруга",
|
||||
"InputVoltageString": "Сілкаванне В: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Чаканне...",
|
||||
"SleepingTipAdvancedString": "Джала:",
|
||||
"OffString": "Выкл."
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Скід OK",
|
||||
"SettingsResetMessage": ["Налады", "зкінуты!"],
|
||||
"NoAccelerometerMessage": ["Ня вызначаны", "акселерометр!"],
|
||||
"NoPowerDeliveryMessage": ["Няма USB-PD IC", "выяўлены!"],
|
||||
"LockingKeysString": "ЗАМКНУТЫ",
|
||||
"UnlockingKeysString": "АДЫМКНУТЫ",
|
||||
"WarningKeysLockedString": "!ЗАМКНУТЫ!",
|
||||
"WarningThermalRunaway": ["Цеплавы", "Уцякач"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "П",
|
||||
"SettingLeftChar": "Л",
|
||||
"SettingAutoChar": "А",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "М",
|
||||
"SettingMediumChar": "С",
|
||||
"SettingFastChar": "Х",
|
||||
"SettingStartNoneChar": "В",
|
||||
"SettingStartSolderingChar": "П",
|
||||
"SettingStartSleepChar": "Ч",
|
||||
"SettingStartSleepOffChar": "К",
|
||||
"SettingSensitivityOff": "А",
|
||||
"SettingSensitivityLow": "Н",
|
||||
"SettingSensitivityMedium": "С",
|
||||
"SettingSensitivityHigh": "В",
|
||||
"SettingLockDisableChar": "А",
|
||||
"SettingLockBoostChar": "Т",
|
||||
"SettingLockFullChar": "П"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Налады", "сілкавання"],
|
||||
"desc": "Крыніца сілкавання і мінімальная напруга на ячэйку"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Налады", "пайкі"],
|
||||
"desc": "Налады пайкі"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Рэжымы", "сну"],
|
||||
"desc": "Налады рэжыму чакання"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Налады", "інтэрфейсу"],
|
||||
"desc": "Карыстальніцкія налады знешняга выгляду"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Дадатковыя", "налады"],
|
||||
"desc": "Дадатковыя налады"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Крыніца", "сілкавання"],
|
||||
"desc": "Крыніца сілкавання. Усталюе напругу адсечкі. (DC 10В) (S 3,3В на ячэйку, без абмежавання магутнасці)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Тэмп.", "чакання"],
|
||||
"desc": "Тэмпература рэжыму чакання"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Таймаўт", "чакання"],
|
||||
"desc": "Час да пераходу ў рэжым чакання (Хвіліны | Секунды)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Таймаут", "выключэння"],
|
||||
"desc": "Час да адключэння паяльніка (Хвіліны)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Адчувальнасць", "акселерометра"],
|
||||
"desc": "Адчувальнасць акселерометра (0=Выкл. | 1=Мін. | ... | 9=Макс.)"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Адзінкі", "тэмпературы"],
|
||||
"desc": "Адзінкі вымярэння тэмпературы (C=Цэльcія | F=Фарэнгейта)"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Падрабязны", "рэжым чакання"],
|
||||
"desc": "Адлюстроўваць дэталёвую инфармацыю паменьшаным шрыфтом на экране чакання"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Арыентацыя", "экрану"],
|
||||
"desc": "Арыентацыя экрану (П=Правая рука | Л=Левая рука | А=Аўта)"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["t° турба", "рэжыму"],
|
||||
"desc": "Тэмпература джала ў турба-рэжыме"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Аўта", "старт"],
|
||||
"desc": "Рэжым, у якім запускаецца паяльнік пры падачы сілкавання (В=Выкл. | П=Пайка | Ч=Чаканне | К=Чаканне пры комн. тэмп.)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Мігценне t°", "пры астуджэнні"],
|
||||
"desc": "Міргаць тэмпературай на экране астуджэння, пакуль джала яшчэ гарачае"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Каліброўка", "тэмпературы"],
|
||||
"desc": "Каліброўка тэрмадатчыка джала"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Скід", "наладаў"],
|
||||
"desc": "Скід наладаў да першапачатковых значэнняў"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Каліброўка", "напругі"],
|
||||
"desc": "Каліброўка ўваходнай напругі (падоўжаны націск для выхаду)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Падрабязны", "экран пайкі"],
|
||||
"desc": "Паказваць дэталёвую інформацыю на экране пайкі"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Хуткацсь", "тексту"],
|
||||
"desc": "Хуткасць гартання тэксту (М=марудна | Х=хутка)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Магутнасць", "сілкавання"],
|
||||
"desc": "Магутнасць выкарыстоўваемай крыніцы сілкавання"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "прыпынак"],
|
||||
"desc": "Час чакання ўзгаднення PD з крокам 100 мс для сумяшчальнасці з некаторымі зараднымі зараднымі прыладамі QC (0: адключана)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Межы", "магутнасці"],
|
||||
"desc": "Максімальная магутнасць, якую можа выкарыстоўваць паяльнік (Ватт)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Інвертаваць", "кнопкі"],
|
||||
"desc": "Інвертаваць кнопкі вымярэння тэмпературы"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Крок тэмп.", "кар. нац."],
|
||||
"desc": "Крок вымярэння тэмпературы пры кароткім націску кнопак"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Крок тэмп.", "пад. нац."],
|
||||
"desc": "Крок вымярэння тэмпературы пры падоўжаным націску кнопак"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Сіла імп.", "сілкав. Вт"],
|
||||
"desc": "Сіла імпульса ўтрымливаючага ад сну павербанку ці іншай крыніцы сілкавання"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Эфект Хола", "адчувальнасць"],
|
||||
"desc": "Узровень адчувальнасці датчыка хола ў рэжыме сну (0=Выкл. | 1=Мін. | ... | 9=Макс.)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Дазволіць", "блок. кнопак"],
|
||||
"desc": "Пры рабоце падоўжаны націск дзьвух кнопак блакуе іх (А=Адключана | Т=Толькі турба | П=Поўная блакіроўка)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Мін.", "напр."],
|
||||
"desc": "Мінімальная дазволеная напруга на ячэйку (3S: 3 - 3,7V | 4S: 2,4 - 3,7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Зацыкленая", "анімацыя"],
|
||||
"desc": "Зацыкленая анімацыя гузікаў у галоўным меню"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Хуткасць", "анімацыі"],
|
||||
"desc": "Хуткасць анімацыі гузікаў у галоўным меню (Мілісекунды) (А=Адключана | Н=Нізкая | С=Сярэдняя | В=Высокая)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Імпульс магутнасці", "час чакання"],
|
||||
"desc": "Час чакання перад запускам кожнага імпульсу няспання (x 2.5 с)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Імпульс магутнасці", "працягласць"],
|
||||
"desc": "Працягласць імпульсу няспання (x 250 мс)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Мова:", " BY Беларуская"],
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Экран", "Яркасць"],
|
||||
"desc": "Адрэгулюйце кантраснасць / яркасць OLED-экрана"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Экран", "Інвертаваць"],
|
||||
"desc": "Інвертаваць колеры OLED-экрана"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Лагатып загрузкі", "працягласць"],
|
||||
"desc": "Усталяваць працягласць лагатыпа загрузкі (s=Секунды)"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,33 +2,24 @@
|
||||
"languageCode": "BG",
|
||||
"languageLocalName": "Български",
|
||||
"fonts": ["ascii_basic", "cyrillic"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Калибрацията завършена!",
|
||||
"SettingsCalibrationWarning": "Уверете се, че върха на поялника е със стайна температура преди да продължите!",
|
||||
"SettingsResetWarning": "Сигурни ли сте, че искате да върнете фабричните настройки?",
|
||||
"UVLOWarningString": "Ниско DC Напрежение",
|
||||
"UndervoltageString": "Ниско Напрежение",
|
||||
"InputVoltageString": "Входно V: ",
|
||||
"WarningTipTempString": "Темп.: ",
|
||||
"BadTipString": "ЛОШ ВРЪХ",
|
||||
"SleepingSimpleString": "Сън",
|
||||
"SleepingAdvancedString": "Хър Хър Хър...",
|
||||
"WarningSimpleString": "ОХ!",
|
||||
"WarningAdvancedString": "ВНИМАНИЕ! ТОПЛО!",
|
||||
"SleepingTipAdvancedString": "Връх:",
|
||||
"IdleTipString": "Връх:",
|
||||
"IdleSetString": " Настройка:",
|
||||
"TipDisconnectedString": "ПРЕКЪСНАТ ВРЪХ",
|
||||
"SolderingAdvancedPowerPrompt": "Захранване: ",
|
||||
"OffString": "Изкл.",
|
||||
"YourGainMessage": "Усилване:"
|
||||
"OffString": "Изкл."
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Нулиране",
|
||||
"SettingsResetMessage": ["Настройките бяха", "нулирани!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " LOCKED",
|
||||
"LockingKeysString": "LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
@@ -45,15 +36,13 @@
|
||||
"SettingStartSolderingChar": "Р",
|
||||
"SettingStartSleepChar": "С",
|
||||
"SettingStartSleepOffChar": "П",
|
||||
"SettingStartNoneChar": "F",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "L",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -148,7 +137,7 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Лимит на", "мощност"],
|
||||
@@ -171,12 +160,12 @@
|
||||
"desc": "Поддържане на интензивност на захранващия импулс"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=Изключено | 1=Слабо | ... | 9=Силно)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -184,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | F=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2,5с)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2,5с)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -203,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,213 +1,339 @@
|
||||
{
|
||||
"languageCode": "CS",
|
||||
"languageLocalName": "Český",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibrace dokončena!",
|
||||
"SettingsCalibrationWarning": "Ujistěte se, že hrot má pokojovou teplotu!",
|
||||
"SettingsResetWarning": "Opravdu chcete resetovat zařízení do továrního nastavení?",
|
||||
"UVLOWarningString": "Nízké DC",
|
||||
"UndervoltageString": "! Nízké napětí !",
|
||||
"InputVoltageString": "Napětí: ",
|
||||
"WarningTipTempString": "Teplota: ",
|
||||
"BadTipString": "ŠP. HROT",
|
||||
"SleepingSimpleString": "Zzz ",
|
||||
"SleepingAdvancedString": "Režim spánku...",
|
||||
"WarningSimpleString": "PÁLÍ",
|
||||
"WarningAdvancedString": "!! HORKÝ HROT !!",
|
||||
"SleepingTipAdvancedString": "Hrot:",
|
||||
"IdleTipString": "Hrot:",
|
||||
"IdleSetString": " Cíl:",
|
||||
"TipDisconnectedString": "HROT NEPŘIPOJEN",
|
||||
"SolderingAdvancedPowerPrompt": "Ohřev: ",
|
||||
"OffString": "Vyp",
|
||||
"YourGainMessage": "Zisk:"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Tov. nas. obnov.", ""],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "P",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "P",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "R",
|
||||
"SettingStartNoneChar": "O",
|
||||
"SettingStartSolderingChar": "P",
|
||||
"SettingStartSleepChar": "S",
|
||||
"SettingStartSleepOffChar": "M",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "L",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Power", "settings"],
|
||||
"desc": "Power settings"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Pájecí", "nastavení"],
|
||||
"desc": "Nastavení pájení (boost, auto start...)."
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Režim", "spánku"],
|
||||
"desc": "Nastavení režimu spánku, automatického vypnutí..."
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Uživatelské", "rozhraní"],
|
||||
"desc": "Nastavení uživatelského rozhraní."
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Pokročilé", "volby"],
|
||||
"desc": "Pokročilé volby (detailní obrazovky, kalibrace, tovární nastavení...)."
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Zdroj", "napájení"],
|
||||
"desc": "Při nižším napětí ukončí pájení (DC=10V | ?S=?x3,3V pro LiPo, LiIon...)."
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Teplota v", "r. spánku"],
|
||||
"desc": "Teplota v režimu spánku."
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Čas do", "r. spánku"],
|
||||
"desc": "Čas do režimu spánku (Minut | Sekund)."
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Čas do", "vypnutí"],
|
||||
"desc": "Čas do automatického vypnutí (Minut)."
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Citlivost", "det. pohybu"],
|
||||
"desc": "Citlivost detekce pohybu (0=Vyp | 1=Min | ... | 9=Max)."
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Jednotky", "teploty"],
|
||||
"desc": "Jednotky měření teploty (C=Celsius | F=Fahrenheit)."
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Podrobnosti", "na vých. obr."],
|
||||
"desc": "Zobrazit podrobnosti na výchozí obrazovce?"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Orientace", "obrazovky"],
|
||||
"desc": "Orientace obrazovky (P=Pravák | L=Levák | A=Auto)."
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Teplota v", "r. boost"],
|
||||
"desc": "Teplota v režimu boost."
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Automatický", "start"],
|
||||
"desc": "Při startu ihned nahřát hrot? (O=Pryč | P=Pájení | S=Spát | M=Spát teplota místnosti)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Blikáni při", "chladnutí"],
|
||||
"desc": "Blikání teploty při chladnutí, dokud je hrot horký?"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Kalibrovat", "teplotu?"],
|
||||
"desc": "Kalibrace měření teploty."
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Tovární", "nastavení?"],
|
||||
"desc": "Obnovení továrního nastavení."
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Kalibrovat", "vstupní napětí?"],
|
||||
"desc": "Kalibrace vstupního napětí. Tlačítky uprav, podržením potvrď."
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Podrobnosti", "při pájení"],
|
||||
"desc": "Zobrazit podrobnosti při pájení?"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Rychlost", "popisků"],
|
||||
"desc": "Rychlost posuvu popisků podobných tomuto (P=Pomalu | R=Rychle)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Výkon", "ve wattech"],
|
||||
"desc": "Výkon použítého napájecího adaptéru ve wattech."
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Omezení", "Výkonu"],
|
||||
"desc": "Maximální příkon (Watty)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Prohodit", "tl. +-?"],
|
||||
"desc": "Prohodí tlačítka plus a minus pro změnu teploty hrotu."
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Krok teploty", "krátký?"],
|
||||
"desc": "Velikost skoku při změně teploty krátkým stiskem tlačítka!"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Krok teploty", "dlouhý?"],
|
||||
"desc": "Velikost skoku při změně teploty dlouhým stiskem tlačítka!"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Intenzita", "Výkon. pulsu"],
|
||||
"desc": "Puls pro udržení zařízení v chodu (kvůli power bankám)."
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
"desc": "Minimum allowed voltage per cell (3S: 3 - 3,7V | 4-6S: 2,4 - 3,7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2,5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
"desc": "Keep-awake-pulse duration (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Řeč:", " CS Český"],
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
}
|
||||
}
|
||||
}
|
||||
"languageCode": "CS",
|
||||
"languageLocalName": "Český",
|
||||
"fonts": [
|
||||
"ascii_basic",
|
||||
"latin_extended"
|
||||
],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Ujistěte se, že hrot má pokojovou teplotu!",
|
||||
"SettingsResetWarning": "Opravdu chcete resetovat zařízení do továrního nastavení?",
|
||||
"UVLOWarningString": "Nízké DC",
|
||||
"UndervoltageString": "Nízké napětí",
|
||||
"InputVoltageString": "Napětí: ",
|
||||
"SleepingSimpleString": "Zzz ",
|
||||
"SleepingAdvancedString": "Režim spánku...",
|
||||
"SleepingTipAdvancedString": "Hrot:",
|
||||
"OffString": "Vyp"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": [
|
||||
"Nějaká nastavení",
|
||||
"byla změněna!"
|
||||
],
|
||||
"NoAccelerometerMessage": [
|
||||
"Akcelerometr",
|
||||
"nebyl detekován!"
|
||||
],
|
||||
"NoPowerDeliveryMessage": [
|
||||
"Žádný IO USB-PD",
|
||||
"nebyl detekován!"
|
||||
],
|
||||
"LockingKeysString": "ZAMČENO",
|
||||
"UnlockingKeysString": "ODEMČENO",
|
||||
"WarningKeysLockedString": "ZAMČENO!",
|
||||
"WarningThermalRunaway": [
|
||||
"Teplotní",
|
||||
"Ochrana"
|
||||
]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "P",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "D",
|
||||
"SettingSlowChar": "P",
|
||||
"SettingMediumChar": "S",
|
||||
"SettingFastChar": "R",
|
||||
"SettingStartNoneChar": "V",
|
||||
"SettingStartSolderingChar": "P",
|
||||
"SettingStartSleepChar": "S",
|
||||
"SettingStartSleepOffChar": "M",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "M",
|
||||
"SettingSensitivityMedium": "S",
|
||||
"SettingSensitivityHigh": "V",
|
||||
"SettingLockDisableChar": "Z",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "U"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": [
|
||||
"Napájecí",
|
||||
"nastavení"
|
||||
],
|
||||
"desc": "Nastavení napájení"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": [
|
||||
"Pájecí",
|
||||
"nastavení"
|
||||
],
|
||||
"desc": "Nastavení pájení"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": [
|
||||
"Režim",
|
||||
"spánku"
|
||||
],
|
||||
"desc": "Nastavení úspory energie"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": [
|
||||
"Uživatelské",
|
||||
"rozhraní"
|
||||
],
|
||||
"desc": "Nastavení uživatelského rozhraní"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": [
|
||||
"Pokročilá",
|
||||
"nastavení"
|
||||
],
|
||||
"desc": "Pokročilá nastavení"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": [
|
||||
"Zdroj",
|
||||
"napájení"
|
||||
],
|
||||
"desc": "Při nižším napětí ukončit pájení (DC 10V) (S 3,3V na článek, zakázat omezení napájení)."
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": [
|
||||
"Teplota",
|
||||
"ve spánku"
|
||||
],
|
||||
"desc": "Teplota hrotu v režimu spánku."
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": [
|
||||
"Čas",
|
||||
"do spánku"
|
||||
],
|
||||
"desc": "\"Režim spánku\" naběhne v (s=sekundách | m=minutách)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": [
|
||||
"Čas do",
|
||||
"vypnutí"
|
||||
],
|
||||
"desc": "Interval automatického vypnutí (m=minut)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": [
|
||||
"Citlivost",
|
||||
"na pohyb"
|
||||
],
|
||||
"desc": "0=vyp | 1=nejméně citlivé | ... | 9=nejvíce citlivé"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": [
|
||||
"Jednotka",
|
||||
"teploty"
|
||||
],
|
||||
"desc": "C=Celsius | F=Fahrenheit"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": [
|
||||
"Podrobná obr.",
|
||||
"nečinnosti"
|
||||
],
|
||||
"desc": "Zobrazit detailní informace malým fontem na obrazovce nečinnosti"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": [
|
||||
"Orientace",
|
||||
"obrazovky"
|
||||
],
|
||||
"desc": "P=pravák | L=levák | A=automaticky"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": [
|
||||
"Teplota",
|
||||
"boostu"
|
||||
],
|
||||
"desc": "Teplota hrotu v \"režimu boost\""
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": [
|
||||
"Chování",
|
||||
"při startu"
|
||||
],
|
||||
"desc": "V=vypnuto | P=pájecí teplota | S=spánková teplota | M=zahřát hrot po pohybu"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": [
|
||||
"Blikáni při",
|
||||
"chladnutí"
|
||||
],
|
||||
"desc": "Blikat teplotou při chladnutí dokud je hrot horký"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": [
|
||||
"Kalibrovat",
|
||||
"teplotu?"
|
||||
],
|
||||
"desc": "Začít kalibraci měření teploty hrotu"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": [
|
||||
"Obnovit tovární",
|
||||
"nastavení?"
|
||||
],
|
||||
"desc": "Obnovit všechna nastavení na výchozí"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": [
|
||||
"Kalibrovat",
|
||||
"vstupní napětí?"
|
||||
],
|
||||
"desc": "Začít kalibraci vstupního napětí (dlouhý stisk pro ukončení)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": [
|
||||
"Podrobná obr.",
|
||||
"pájení"
|
||||
],
|
||||
"desc": "Zobrazit detailní informace malým fontem na obrazovce pájení"
|
||||
},
|
||||
"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)"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,33 +2,24 @@
|
||||
"languageCode": "DA",
|
||||
"languageLocalName": "Dansk",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Calibration done!",
|
||||
"SettingsCalibrationWarning": "Sørg for at loddespidsen er ved stuetemperatur, inden du fortsætter!",
|
||||
"SettingsResetWarning": "Are you sure to reset settings to default values?",
|
||||
"UVLOWarningString": "Lav Volt",
|
||||
"UndervoltageString": "Undervoltage",
|
||||
"InputVoltageString": "Input V: ",
|
||||
"WarningTipTempString": "Tip Temp: ",
|
||||
"BadTipString": "BAD TIP",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Dvale...",
|
||||
"WarningSimpleString": "Varm",
|
||||
"WarningAdvancedString": "VARM LODDESPIDS!",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"IdleTipString": "Tip:",
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "TIP DISCONNECTED",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " LOCKED",
|
||||
"LockingKeysString": "LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -60,20 +50,20 @@
|
||||
"desc": "Power settings"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Soldering", "Settings"],
|
||||
"text2": ["Soldering", "settings"],
|
||||
"desc": "Soldering settings"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Sleep", "Modes"],
|
||||
"desc": "Power Saving Settings"
|
||||
"text2": ["Sleep", "mode"],
|
||||
"desc": "Power saving settings"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["User", "Interface"],
|
||||
"desc": "User Interface settings"
|
||||
"text2": ["User", "interface"],
|
||||
"desc": "User interface settings"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Advanced", "Options"],
|
||||
"desc": "Advanced options"
|
||||
"text2": ["Advanced", "settings"],
|
||||
"desc": "Advanced settings"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
@@ -114,11 +104,11 @@
|
||||
"desc": "Temperatur i \"boost\" mode"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Auto", "start"],
|
||||
"text2": ["Start-up", "behavior"],
|
||||
"desc": "Start automatisk med lodning når strøm sættes til. (S=Slukket | L=Lodning | D=Dvale tilstand | R=Dvale tilstand rumtemperatur)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Cooldown", "blink"],
|
||||
"text2": ["Cooldown", "flashing"],
|
||||
"desc": "Blink temperaturen på skærmen, mens spidsen stadig er varm."
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
@@ -126,7 +116,7 @@
|
||||
"desc": "kalibrere spids temperatur."
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Factory", "Reset?"],
|
||||
"text2": ["Restore factory", "settings?"],
|
||||
"desc": "Gendan alle indstillinger"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
@@ -139,43 +129,43 @@
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Scrolling", "speed"],
|
||||
"desc": "Speed this text scrolls past at"
|
||||
"desc": "Speed info text scrolls past at (S=slow | F=fast)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Power", "Wattage"],
|
||||
"desc": "Power Wattage of the power adapter used"
|
||||
"text2": ["QC", "voltage"],
|
||||
"desc": "Max QC voltage the iron should negotiate for"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"desc": "Reverse the tip temperature change buttons plus minus assignment."
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"desc": "Temperature change steps on short button press!"
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Temperature-change-increment on short button press"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"desc": "Temperature change steps on long button press!"
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Temperature-change-increment on long button press"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"desc": "Keep awake pulse power intensity"
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Intensity of power of keep-awake-pulse (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=Slukket | 1=Mindst følsom | ... | 9=Mest følsom)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -183,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | F=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2,5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2,5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,10 +12,6 @@
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Ruhemodus...",
|
||||
"SleepingTipAdvancedString": "Temp:",
|
||||
"IdleTipString": "Ist:",
|
||||
"IdleSetString": " Soll:",
|
||||
"TipDisconnectedString": "Spitze fehlt",
|
||||
"SolderingAdvancedPowerPrompt": "Leistung: ",
|
||||
"OffString": "Aus"
|
||||
},
|
||||
"messagesWarn": {
|
||||
@@ -46,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "A",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "V",
|
||||
"SettingNAChar": "-"
|
||||
"SettingLockFullChar": "V"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -82,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"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": {
|
||||
"text2": ["Abschalt-", "verzög."],
|
||||
"desc": "Dauer vor automatischer Abschaltung (M=Minuten)"
|
||||
"desc": "Dauer vor automatischer Abschaltung (m=Minuten)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Bewegungs-", "empfindlichk."],
|
||||
@@ -166,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Empfindlichkeit", "der Hall-Sonde"],
|
||||
"desc": "Empfindlichkeit der Hall-Sonde beim Erkennen des Ruhemodus (A=aus | N=niedrig | M=mittel | H=hoch)"
|
||||
"desc": "Empfindlichkeit der Hall-Sonde beim Erkennen des Ruhemodus (0=aus | 1=minimal | ... | 9=maximal)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Tasten-", "sperre"],
|
||||
@@ -194,7 +189,7 @@
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Sprache:", " DE Deutsch"],
|
||||
"desc": ""
|
||||
"desc": "Sprache der Firmware ändern"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Bildschirm-", "kontrast"],
|
||||
@@ -203,6 +198,10 @@
|
||||
"ColourInversion": {
|
||||
"text2": ["Farben", "umkehren"],
|
||||
"desc": "Invertiert die Farben des OLED-Displays"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Startlogo-", "dauer"],
|
||||
"desc": "Legt die Dauer der Anzeige des Startlogos fest (s=Sekunden)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
207
Translations/translation_EL.json
Normal file
207
Translations/translation_EL.json
Normal file
@@ -0,0 +1,207 @@
|
||||
{
|
||||
"languageCode": "EL",
|
||||
"languageLocalName": "Greek",
|
||||
"fonts": ["ascii_basic", "greek"],
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Πριν προχωρήσετε, παρακαλώ σιγουρευτείτε πως η μύτη βρίσκεται σε θερμοκρασία δωματίου!",
|
||||
"SettingsResetWarning": "Σίγουρα θέλετε επαναφορά αρχικών ρυθμίσεων;",
|
||||
"UVLOWarningString": "Χαμηλ DC",
|
||||
"UndervoltageString": "Υπόταση",
|
||||
"InputVoltageString": "Είσοδος V: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Υπνος...",
|
||||
"SleepingTipAdvancedString": "Μύτη:",
|
||||
"OffString": "Απ."
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Επαν. OK",
|
||||
"SettingsResetMessage": ["Κάποιες ρυθμ.", "άλλαξαν"],
|
||||
"NoAccelerometerMessage": ["Δεν εντοπίστηκε", "επιταχυνσιόμετρο"],
|
||||
"NoPowerDeliveryMessage": ["Δεν εντοπίστηκε", "κύκλωμα USB-PD"],
|
||||
"LockingKeysString": "ΚΛΕΙΔ.",
|
||||
"UnlockingKeysString": "ΞΕΚΛΕΙΔ.",
|
||||
"WarningKeysLockedString": ["ΚΛΕΙΔΩΜΕΝΑ", "ΠΛΗΚΤΡΑ!"],
|
||||
"WarningThermalRunaway": ["Θερμική", "Φυγή"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "Α",
|
||||
"SettingOffChar": "0",
|
||||
"SettingSlowChar": "Α",
|
||||
"SettingMediumChar": "Μ",
|
||||
"SettingFastChar": "Γ",
|
||||
"SettingStartNoneChar": "0",
|
||||
"SettingStartSolderingChar": "Κ",
|
||||
"SettingStartSleepChar": "Ζ",
|
||||
"SettingStartSleepOffChar": "Υ",
|
||||
"SettingSensitivityOff": "0",
|
||||
"SettingSensitivityLow": "Χ",
|
||||
"SettingSensitivityMedium": "Μ",
|
||||
"SettingSensitivityHigh": "Υ",
|
||||
"SettingLockDisableChar": "Α",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "Π"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Ρυθμίσεις", "ενέργειας"],
|
||||
"desc": "Ρυθμίσεις ενέργειας"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Ρυθμίσεις", "κόλλησης"],
|
||||
"desc": "Ρυθμίσεις κόλλησης"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Λειτουργία", "ύπνου"],
|
||||
"desc": "Ρυθμίσεις εξοικ. ενέργ."
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Διεπαφή", "χρήστη"],
|
||||
"desc": "Ρυθμίσεις διεπαφής χρήστη"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Προηγμένες", "ρυθμίσεις"],
|
||||
"desc": "Προηγμένες ρυθμίσεις"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Πηγή", "ενέργειας"],
|
||||
"desc": "Πηγή ενέργειας. Oρισμός τάσης απενεργοποίησης. (DC 10V) (S 3.3V ανα κυψέλη, απενεργοποίηση ενεργειακού ορίου)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Θερμοκρ.", "ύπνου"],
|
||||
"desc": "Θερμοκρασία μύτης σε λειτ. ύπνου"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Έναρξη", "ύπνου"],
|
||||
"desc": "Χρονικό διάστημα πρίν την ενεργοποίηση λειτουργίας ύπνου (Δ=δευτ. | Λ=λεπτά)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Έναρξη", "απενεργ."],
|
||||
"desc": "Χρονικό διάστημα πρίν την απενεργοποίηση του κολλητηριού (Λ=λεπτά)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Ευαισθησία", "κίνησης"],
|
||||
"desc": "0=off | 1=λιγότερο ευαίσθητο | ... | 9=περισσότερο ευαίσθητο"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Μονάδες", "θερμοκρασίας"],
|
||||
"desc": "C=Κελσίου | F=Φαρενάιτ"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Λεπτομερής", "οθ. αδράνειας"],
|
||||
"desc": "Προβολή λεπτομερών πληροφοριών σε μικρότερη γραμματοσειρά στην οθόνη αδράνειας"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Διάταξη", "οθόνης"],
|
||||
"desc": "R=δεξιόχειρες | L=αριστερόχειρες | Α=αυτόματο"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Θερμοκ.", "boost"],
|
||||
"desc": "Θερμοκρασία στη \"λειτουργία boost\""
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Ζέσταμα", "κατά την εν."],
|
||||
"desc": "0=off | Κ=θερμ. κόλλησης | Z=αναμονή σε θερμοκρασία ύπνου μέχρι την κίνηση | Υ=αναμονή χωρίς ζέσταμα μέχρι την κίνηση"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Αναβοσβήσιμο", "ψύξης"],
|
||||
"desc": "Αναβοσβήσιμο της ενδειξης θερμοκρασίας κατά την παύση θέρμανσης όταν η μύτη είναι ακόμα καυτή"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Βαθμονόμηση", "θερμοκρασίας;"],
|
||||
"desc": "Βαθμονόμηση αρχικής θερμοκρασίας μύτης"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Επαναφορά", "εργ. ρυθμίσεων;"],
|
||||
"desc": "Επαναφορά στις προεπιλεγμένες ρυθμίσεις"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Βαθμονόμηση", "τάσης εισόδου;"],
|
||||
"desc": "Έναρξη βαθμονόμησης τάσης εισόδου (κράτημα για έξοδο)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Λεπτομερής", "οθ. κόλλησης"],
|
||||
"desc": "Προβολή λεπτομερών πληροφοριών σε μικρότερη γραμματοσειρά στην οθόνη κόλλησης"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Ταχύτητα", "κύλισης"],
|
||||
"desc": "Ταχύτητα κύλισης κειμένου (Α=αργά | Γ=γρήγορα)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Τάση", "QC"],
|
||||
"desc": "Μέγιστη τάση QC που να ζητά το κολλητήρι από το τροφοδοτικό"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["χρονικό όριο", "PD"],
|
||||
"desc": "Χρονικό όριο διαπραγμάτευσης PD σε βήματα 100ms για συμβατότητα με κάποιους φορτιστές QC"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Ενεργειακό", "όριο"],
|
||||
"desc": "Μέγιστη ενέργεια που μπορεί να χρησιμοποιεί το κολλητήρι (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Αντιστροφή", "πλήκτρων + -"],
|
||||
"desc": "Αντιστροφή διάταξης πλήκτρων στη ρύθμιση θερμοκρασίας"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Αλλαγή θερμοκ.", "στιγμιαίο"],
|
||||
"desc": "Βήμα αλλαγής θερμοκρασίας σε στιγμιαίο πάτημα πλήκτρου"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Αλλαγή θερμοκ.", "παρατεταμένο"],
|
||||
"desc": "Βήμα αλλαγής θερμοκρασίας σε παρατεταμένο πάτημα πλήκτρου"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Παλμός", "ενέργειας"],
|
||||
"desc": "Ένταση ενέργειας παλμού διατήρησης λειτουργίας (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Ευαισθ. αισθ. ", "φαιν. Hall"],
|
||||
"desc": "Ευαισθησία του αισθητήρα φαινομένου Hall για εντοπισμό αδράνειας (0=off | 1=λιγότερο ευαίσθητο | ... | 9=περισσότερο ευαίσθητο)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Κλείδωμα", "πλήκτρων"],
|
||||
"desc": "Κατά την κόλληση, κρατήστε και τα δύο πλήκτρα για κλείδωμα (A=απενεργοποίηση | B=μόνο λειτ. boost | Π=πλήρες κλείδωμα)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Ελάχιστη", "τάση"],
|
||||
"desc": "Ελάχιστη επιτρεπτή τάση ανα κυψέλη (3 σε σειρά: 3 - 3.7V | 4-6 σε σειρά: 2.4 - 3.7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Επανάληψη", "κιν. εικονιδ."],
|
||||
"desc": "Επανάληψη κίνησης εικονιδίων στο αρχικό μενού"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Ταχύτητα", "κιν. εικονιδ."],
|
||||
"desc": "Ρυθμός κίνησης εικονιδίων στο μενού (0=off | Α=αργός | Μ=μέτριος | Γ=γρήγορος"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Καθυστέρηση", "παλμού ενέργ."],
|
||||
"desc": "Καθυστέρηση πριν την ενεργοποίση παλμού διατήρησης λειτουργίας (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Διάρκεια", "παλμού ενέργ."],
|
||||
"desc": "Διάρκεια παλμού διατήρησης ενέργειας (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Γλώσσα", " GR Ελληνικά"],
|
||||
"desc": "Τρέχουσα γλώσσα λογισμικού"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Αντίθεση", "οθόνης"],
|
||||
"desc": "Ρύθμιση φωτεινότητας οθόνης OLED"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Αντιστροφή", "χρωμάτων"],
|
||||
"desc": "Αντιστροφή χρωμάτων οθόνης OLED"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,22 +5,18 @@
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Please ensure the tip is at room temperature, before proceeding!",
|
||||
"SettingsResetWarning": "Sure you want to restore default settings?",
|
||||
"SettingsResetWarning": "Are you sure you want to restore default settings?",
|
||||
"UVLOWarningString": "DC LOW",
|
||||
"UndervoltageString": "Undervoltage",
|
||||
"InputVoltageString": "Input V: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Sleeping...",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"IdleTipString": "Tip:",
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "NO TIP",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Some settings", "changed"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": "LOCKED",
|
||||
@@ -46,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -82,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"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": {
|
||||
"text2": ["Shutdown", "timeout"],
|
||||
"desc": "Interval before the iron shuts down (M=minutes)"
|
||||
"desc": "Interval before the iron shuts down (m=minutes)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Motion", "sensitivity"],
|
||||
@@ -106,14 +101,14 @@
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Boost", "temp"],
|
||||
"desc": "Temperature used in \"boost mode\""
|
||||
"desc": "Tip temperature used in \"boost mode\""
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Heat", "on power up"],
|
||||
"desc": "O=off | S=soldering temp | Z=standby at sleep temp until moved | R=standby without heating until moved"
|
||||
"text2": ["Start-up", "behavior"],
|
||||
"desc": "O=off | S=heat up to soldering temp | Z=standby at sleep temp until moved | R=standby without heating until moved"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Cooldown", "blink"],
|
||||
"text2": ["Cooldown", "flashing"],
|
||||
"desc": "Flash the temperature reading after heating was halted while the tip is still hot"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
@@ -121,8 +116,8 @@
|
||||
"desc": "Start tip temperature offset calibration"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Factory", "reset?"],
|
||||
"desc": "Reset settings to default"
|
||||
"text2": ["Restore factory", "settings?"],
|
||||
"desc": "Reset all settings to default"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Calibrate", "input voltage?"],
|
||||
@@ -149,7 +144,7 @@
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Reverse", "+ - keys"],
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
@@ -166,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=off | 1=least sensitive | ... | 9=most sensitive)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
@@ -197,12 +192,16 @@
|
||||
"desc": "Current firmware language"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "contrast"],
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,27 +2,17 @@
|
||||
"languageCode": "ES",
|
||||
"languageLocalName": "Castellano",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "¡Calibrada!",
|
||||
"SettingsCalibrationWarning": "¡Asegúrate que la punta esté a temperatura ambiente antes de empezar!",
|
||||
"SettingsResetWarning": "¿Quieres restablecer los ajustes?",
|
||||
"UVLOWarningString": "CC BAJA",
|
||||
"UndervoltageString": "Voltaje bajo",
|
||||
"InputVoltageString": "Voltaje: ",
|
||||
"WarningTipTempString": "Temp punta: ",
|
||||
"BadTipString": "PT. ROTA",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "En reposo...",
|
||||
"WarningSimpleString": "QUEMA",
|
||||
"WarningAdvancedString": "¡LA PUNTA QUEMA!",
|
||||
"SleepingTipAdvancedString": "Punta:",
|
||||
"IdleTipString": "Punta:",
|
||||
"IdleSetString": " Aj:",
|
||||
"TipDisconnectedString": "NO HAY PUNTA",
|
||||
"SolderingAdvancedPowerPrompt": "Potencia: ",
|
||||
"OffString": " No",
|
||||
"YourGainMessage": "Gananc.:",
|
||||
"SettingsResetMessage": "Ajustes borrados"
|
||||
"OffString": " No"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Hecho.",
|
||||
@@ -52,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -172,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensibilidad"],
|
||||
"desc": "Sensibilidad del sensor de efecto Hall en la detección de reposo (O=Off | L=Low | M=Medium | H=High)"
|
||||
"desc": "Sensibilidad del sensor de efecto Hall en la detección de reposo (0=no | 1=menos sensible | ... | 9=más sensible)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Permitir botones", "bloqueo"],
|
||||
@@ -188,7 +177,7 @@
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "velocidad"],
|
||||
"desc": "Velocidad de las animaciones de los iconos en el menú (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Velocidad de las animaciones de los iconos en el menú (O=off | L=low | M=medium | R=high)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Impulso de potencia", "tiempo de espera"],
|
||||
@@ -203,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,24 +2,16 @@
|
||||
"languageCode": "FI",
|
||||
"languageLocalName": "Suomi",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibrointi tehty!",
|
||||
"SettingsCalibrationWarning": "Varmista että kärki on huoneenlämpöinen ennen jatkamista!",
|
||||
"SettingsResetWarning": "Haluatko varmasti palauttaa oletusarvot?",
|
||||
"UVLOWarningString": "DC ALH.",
|
||||
"UndervoltageString": "Alijännite",
|
||||
"InputVoltageString": "Jännite: ",
|
||||
"WarningTipTempString": "Kärjet lämpö: ",
|
||||
"BadTipString": "PAHA KÄRJET",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Lepotila...",
|
||||
"WarningSimpleString": "KUUMA!",
|
||||
"WarningAdvancedString": "!!! KUUMA KÄRJET !!!",
|
||||
"SleepingTipAdvancedString": "Kärki:",
|
||||
"IdleTipString": "Pää:",
|
||||
"IdleSetString": "Aseta:",
|
||||
"TipDisconnectedString": "KÄRKI PUUTTUU",
|
||||
"SolderingAdvancedPowerPrompt": "Teho: ",
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
@@ -37,9 +29,9 @@
|
||||
"SettingLeftChar": "V",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "P",
|
||||
"SettingSlowChar": "H",
|
||||
"SettingSlowChar": "A",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "N",
|
||||
"SettingFastChar": "S",
|
||||
"SettingStartNoneChar": "E",
|
||||
"SettingStartSolderingChar": "J",
|
||||
"SettingStartSleepChar": "L",
|
||||
@@ -50,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "S",
|
||||
"SettingLockDisableChar": "P",
|
||||
"SettingLockBoostChar": "V",
|
||||
"SettingLockFullChar": "K",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "K"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -86,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Lepotilan", "viive"],
|
||||
"desc": "\"Lepotilan\" ajastus (S=sekuntia | M=minuuttia)"
|
||||
"desc": "\"Lepotilan\" ajastus (s=sekuntia | m=minuuttia)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Sammutus", "viive"],
|
||||
"desc": "Automaattisen sammutuksen ajastus (M=minuuttia)"
|
||||
"desc": "Automaattisen sammutuksen ajastus (m=minuuttia)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Liikkeen", "herkkyys"],
|
||||
@@ -170,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall-", "herk."],
|
||||
"desc": "Hall-efektianturin herkkyys lepotilan tunnistuksessa (P=pois | A=alhainen | K=keskiverto | S=suuri)"
|
||||
"desc": "Hall-efektianturin herkkyys lepotilan tunnistuksessa (0=pois päältä | 1=vähäinen herkkyys | ... | 9=suurin herkkyys)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Salli nappien", "lukitus"],
|
||||
@@ -201,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,26 +2,17 @@
|
||||
"languageCode": "FR",
|
||||
"languageLocalName": "Français",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Calibration effectuée !",
|
||||
"SettingsCalibrationWarning": "Assurez-vous que la panne soit à température ambiante avant de continuer !",
|
||||
"SettingsResetWarning": "Voulez-vous vraiment réinitialiser les paramètres aux valeurs par défaut ?",
|
||||
"UVLOWarningString": "DC FAIBL",
|
||||
"UndervoltageString": "Sous-tension",
|
||||
"InputVoltageString": "V d'entrée: ",
|
||||
"WarningTipTempString": "Temp. Panne : ",
|
||||
"BadTipString": "PANNE HS",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "En veille...",
|
||||
"WarningSimpleString": "CHAUD !",
|
||||
"WarningAdvancedString": "ATTENTION ! CHAUD !",
|
||||
"SleepingTipAdvancedString": "Panne:",
|
||||
"IdleTipString": "Act:",
|
||||
"IdleSetString": " Reg:",
|
||||
"TipDisconnectedString": "PANNE DÉBRANCHÉE",
|
||||
"SolderingAdvancedPowerPrompt": "Puiss.:",
|
||||
"OffString": "Off",
|
||||
"YourGainMessage": "Gain : "
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "V",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "V"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -87,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"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": {
|
||||
"text2": ["Délai", "extinction"],
|
||||
"desc": "Délai avant extinction (M=minutes)"
|
||||
"desc": "Délai avant extinction (m=minutes)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Sensibilité", "au mouvement"],
|
||||
@@ -147,7 +137,7 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["Délai", "expiration PD"],
|
||||
"desc": "Délai de la negociation PD par étapes de 100ms pour la compatiblité avec certains chargeurs QC (0: désactivé)"
|
||||
"desc": "Délai de la negociation PD par étapes de 100ms pour la compatiblité avec certains chargeurs QC"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Limite de", "puissance"],
|
||||
@@ -175,7 +165,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Sensibilité", "capteur effet hall"],
|
||||
"desc": "Sensibilité du capteur à effet Hall pour la mise en veille (D=désactivé | B=basse | M=moyenne | H=haute)"
|
||||
"desc": "Sensibilité du capteur à effet Hall pour la mise en veille (0=désactivé | 1=peu sensible | ... | 9=très sensible)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Tension", "minimale"],
|
||||
@@ -199,7 +189,7 @@
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Langue :", " FR Français"],
|
||||
"desc": ""
|
||||
"desc": "Langue du firmware"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Luminosité", "de l'écran"],
|
||||
@@ -208,6 +198,10 @@
|
||||
"ColourInversion": {
|
||||
"text2": ["Inverser", "les couleurs"],
|
||||
"desc": "Inverser les couleurs de l'écran OLED"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,33 +2,24 @@
|
||||
"languageCode": "HR",
|
||||
"languageLocalName": "Hrvatski",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibracija gotova!",
|
||||
"SettingsCalibrationWarning": "Provjerite da je vršak ohlađen na sobnu temperaturu prije nego što nastavite!",
|
||||
"SettingsResetWarning": "Jeste li sigurni da želite sve postavke vratiti na tvorničke vrijednosti?",
|
||||
"UVLOWarningString": "BATERIJA",
|
||||
"UndervoltageString": "PRENIZAK NAPON",
|
||||
"InputVoltageString": "Napajanje: ",
|
||||
"WarningTipTempString": "Temp vrha: ",
|
||||
"BadTipString": "LOŠ VRH",
|
||||
"SleepingSimpleString": "Zzz ",
|
||||
"SleepingAdvancedString": "SPAVANJE...",
|
||||
"WarningSimpleString": "VRUĆ",
|
||||
"WarningAdvancedString": "OPREZ, VRUĆE!",
|
||||
"SleepingTipAdvancedString": "Vrh: ",
|
||||
"IdleTipString": "Vrh: ",
|
||||
"IdleSetString": " / ",
|
||||
"TipDisconnectedString": "VRH NIJE SPOJEN!",
|
||||
"SolderingAdvancedPowerPrompt": "Snaga: ",
|
||||
"OffString": "Off",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " LOCKED",
|
||||
"LockingKeysString": "LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -147,51 +137,51 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"desc": "Reverse the tip temperature change buttons plus minus assignment."
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"desc": "Temperature change steps on short button press!"
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Temperature-change-increment on short button press"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"desc": "Temperature change steps on long button press!"
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Temperature-change-increment on long button press"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"desc": "Keep awake pulse power intensity"
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Intensity of power of keep-awake-pulse (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=Ugašeno | 1=Najmanje osjetljivo | ... | 9=Najosjetljivije)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
"desc": "Minimum allowed voltage per cell (3S: 3 - 3.7V, 4-6S: 2.4 - 3.7V)"
|
||||
"desc": "Minimum allowed voltage per cell (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | B=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,36 +2,27 @@
|
||||
"languageCode": "HU",
|
||||
"languageLocalName": "Magyar",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibráció befejezve!",
|
||||
"SettingsCalibrationWarning": "Folytatás előtt győződjön meg róla, hogy a páka szobahőmérsékletű!",
|
||||
"SettingsResetWarning": "Biztosan visszaállítja a beállításokat az alapértelmezett értékekre?",
|
||||
"UVLOWarningString": "DC KEVÉS",
|
||||
"SettingsCalibrationWarning": "Folytatás előtt győződjön meg róla, hogy a forrasztó hegy szobahőmérsékletű!",
|
||||
"SettingsResetWarning": "Biztos visszaállítja a beállításokat alapértékekre?",
|
||||
"UVLOWarningString": "DC TÚL KEVÉS",
|
||||
"UndervoltageString": "Alulfeszültség",
|
||||
"InputVoltageString": "Bemenet V: ",
|
||||
"WarningTipTempString": "Hegy hő: ",
|
||||
"BadTipString": "PÁKAHIBA",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Alvás...",
|
||||
"WarningSimpleString": "FORRÓ!",
|
||||
"WarningAdvancedString": "!! FORRÓ PÁKA !!",
|
||||
"SleepingTipAdvancedString": "Páka:",
|
||||
"IdleTipString": "Páka:",
|
||||
"IdleSetString": " Cél:",
|
||||
"TipDisconnectedString": "PÁKA LEVÉVE",
|
||||
"SolderingAdvancedPowerPrompt": "Telj: ",
|
||||
"OffString": "Ki",
|
||||
"YourGainMessage": "Erősítés:"
|
||||
"SleepingTipAdvancedString": "Hegy:",
|
||||
"OffString": "Ki"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": ["Törlés OK", ""],
|
||||
"SettingsResetMessage": ["Beállítások", "törölve!"],
|
||||
"ResetOKMessage": "Törlés OK",
|
||||
"SettingsResetMessage": ["Beállítások", "visszaállítva!"],
|
||||
"NoAccelerometerMessage": ["Nincs", "gyorsulásmérő!"],
|
||||
"NoPowerDeliveryMessage": ["Nincs USB-PD IC!", ""],
|
||||
"NoPowerDeliveryMessage": ["Nincs", "USB-PD IC!"],
|
||||
"LockingKeysString": "LEZÁRVA",
|
||||
"UnlockingKeysString": "FELOLDVA",
|
||||
"WarningKeysLockedString": "!LEZÁRVA!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
"WarningThermalRunaway": ["Kontrollálatlan", "hőmérséklet!"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "J",
|
||||
@@ -40,19 +31,18 @@
|
||||
"SettingOffChar": "0",
|
||||
"SettingSlowChar": "L",
|
||||
"SettingMediumChar": "K",
|
||||
"SettingFastChar": "G",
|
||||
"SettingFastChar": "Gy",
|
||||
"SettingStartNoneChar": "K",
|
||||
"SettingStartSolderingChar": "F",
|
||||
"SettingStartSleepChar": "A",
|
||||
"SettingStartSleepOffChar": "S",
|
||||
"SettingStartSleepOffChar": "Sz",
|
||||
"SettingSensitivityOff": "0",
|
||||
"SettingSensitivityLow": "A",
|
||||
"SettingSensitivityMedium": "K",
|
||||
"SettingSensitivityHigh": "M",
|
||||
"SettingLockDisableChar": "K",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "T",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "T"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -79,7 +69,7 @@
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Áram", "forrás"],
|
||||
"desc": "Kikapcsolási feszültség beállítása (DC:10V | S:3.3V/LiPo cella)"
|
||||
"desc": "Kikapcsolási feszültség beállítása (DC:10V | S:3.3V/LiPo cella | ki)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Alvási", "hőmérséklet"],
|
||||
@@ -115,15 +105,15 @@
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Automatikus", "indítás"],
|
||||
"desc": "Bekapcsolás után automatikusan lépjen forrasztás módba (K=ki | F=forrasztás | A=alvó mód | S=szobahőmérséklet)"
|
||||
"desc": "Bekapcsolás után automatikusan lépjen forrasztás módba (K=ki | F=forrasztás | A=alvó mód | Sz=szobahőmérséklet)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Villogás", "hűléskor"],
|
||||
"desc": "Villogjon a hőmérséklet hűlés közben, amíg a páka forró"
|
||||
"desc": "Villogjon a hőmérséklet kijelzése hűlés közben, amíg a forrasztó hegy forró"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Hőmérséklet", "kalibrálása?"],
|
||||
"desc": "Páka hőmérséklet-érzékelőjének kalibrálása"
|
||||
"desc": "Forrasztó hegy hőmérséklet-érzékelőjének kalibrálása"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Gyári", "beállítások?"],
|
||||
@@ -131,10 +121,10 @@
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Bemeneti fesz.", "kalibrálása?"],
|
||||
"desc": "Bemeneti feszültség kalibrálása (röviden megnyomva módosítás, hosszan megnyomva kilépés)"
|
||||
"desc": "Bemeneti feszültség kalibrálása (hosszan nyomva kilép)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Részletes", "forrasztás"],
|
||||
"text2": ["Részletes", "forrasztás infó"],
|
||||
"desc": "Részletes információk megjelenítése forrasztás közben"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
@@ -147,23 +137,23 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "időtúllépés"],
|
||||
"desc": "PD egyeztetési leidőzítés 100ms lépésekben megadva néhány QC töltővel való kompatibilitás érdekében (0: kikapcsolva)"
|
||||
"desc": "PD egyeztetés időkerete (kompatibilitás QC töltőkkel) (x 100ms)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Teljesítmény", "maximum"],
|
||||
"desc": "Maximális felvett teljesitmény beállitása"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["+/- gomb", "fordítva"],
|
||||
"desc": "Páka hőmérséklet növelés/csökkentés gombok felcserélése"
|
||||
"text2": ["+/- gomb", "megfordítása"],
|
||||
"desc": "Forrasztó hegy hőmérsékletállító gombok felcserélése"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Hőm. váltás", "rövid"],
|
||||
"desc": "Hőmérséklet váltás rövid gombnyomásra (C | F)"
|
||||
"text2": ["Hőm. állítás", "rövid"],
|
||||
"desc": "Hőmérséklet állítás rövid gombnyomásra (C | F)"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Hőm. váltás", "hosszú"],
|
||||
"desc": "Hőmérséklet váltás hosszú gombnyomásra (C | F)"
|
||||
"text2": ["Hőm. állítás", "hosszú"],
|
||||
"desc": "Hőmérséklet állítás hosszú gombnyomásra (C | F)"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Ébr. pulzus", "nagysága"],
|
||||
@@ -171,11 +161,11 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Alvásérzékelő", "érzékenység"],
|
||||
"desc": "Alvásérzékelő gyorsulásmérő érzékenysége (0=ki | A=alacsony | K=közepes | M=magas)"
|
||||
"desc": "Alvásérzékelő gyorsulásmérő érzékenysége (0=kikapcsolva | 1=legkevésbé érzékeny | ... | 9=legérzékenyebb)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Lezárás", "engedélyezés"],
|
||||
"desc": "Forrasztás közben mindkét gombot hosszan lenyomva rögzíti a hőmérsékletet (K=ki | B=csak \"boost\" mód | T=teljes lezárás)"
|
||||
"desc": "Forrasztás közben mindkét gombot hosszan lenyomva lezárja a kezelést (K=ki | B=csak \"boost\" módban | T=teljes lezárás)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "feszültség"],
|
||||
@@ -187,27 +177,31 @@
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Animáció", "sebessége"],
|
||||
"desc": "Menüikonok animációjának sebessége (0=ki | L=lassú | K=közepes | G=gyors)"
|
||||
"desc": "Menüikonok animációjának sebessége (0=ki | L=lassú | K=közepes | Gy=gyors)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Ébr. pulzus", "időköze"],
|
||||
"desc": "Powerbankot ébrentartó áramfelvételi pulzusok időköze (x2.5s)"
|
||||
"desc": "Powerbankot ébrentartó áramfelvételi pulzusok időköze (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Ébr. pulzus", "időtartama"],
|
||||
"desc": "Powerbankot ébrentartó áramfelvételi pulzusok időtartama (x250ms)"
|
||||
"desc": "Powerbankot ébrentartó áramfelvételi pulzusok időtartama (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Nyelv:", " HU Magyar"],
|
||||
"desc": ""
|
||||
"desc": "Firmware nyelve"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Képernyő", "kontraszt"],
|
||||
"desc": "Képernyő kontrasztjának állítása"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
"text2": ["Képernyő", "invertálás"],
|
||||
"desc": "Képernyő színeinek invertálása"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,336 +1,207 @@
|
||||
{
|
||||
"languageCode": "IT",
|
||||
"languageLocalName": "Italiano",
|
||||
"fonts": [
|
||||
"ascii_basic",
|
||||
"latin_extended"
|
||||
],
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Assicurarsi che la punta si trovi a temperatura ambiente prima di continuare!",
|
||||
"SettingsResetWarning": "Ripristinare le impostazioni iniziali?",
|
||||
"UVLOWarningString": "DC BASSA",
|
||||
"UndervoltageString": "DC INSUFFICIENTE",
|
||||
"InputVoltageString": "V in:",
|
||||
"SleepingSimpleString": "Zzz ",
|
||||
"SleepingAdvancedString": "Riposo",
|
||||
"SleepingTipAdvancedString": "Punta:",
|
||||
"IdleTipString": "T punta:",
|
||||
"IdleSetString": "/",
|
||||
"TipDisconnectedString": "PUNTA ASSENTE",
|
||||
"SolderingAdvancedPowerPrompt": "Potenz:",
|
||||
"OffString": "OFF"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": [
|
||||
"Impostazioni",
|
||||
"ripristinate"
|
||||
],
|
||||
"NoAccelerometerMessage": [
|
||||
"Accelerometro",
|
||||
"non rilevato"
|
||||
],
|
||||
"NoPowerDeliveryMessage": [
|
||||
"USB PD",
|
||||
"non rilevato"
|
||||
],
|
||||
"LockingKeysString": "Blocc.",
|
||||
"UnlockingKeysString": "Sblocc.",
|
||||
"WarningKeysLockedString": "BLOCCATO",
|
||||
"WarningThermalRunaway": [
|
||||
"Temperatura",
|
||||
"fuori controllo"
|
||||
]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
"SettingLeftChar": "S",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "L",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "V",
|
||||
"SettingStartNoneChar": "D",
|
||||
"SettingStartSolderingChar": "S",
|
||||
"SettingStartSleepChar": "R",
|
||||
"SettingStartSleepOffChar": "A",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "B",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityHigh": "A",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "T",
|
||||
"SettingLockFullChar": "C",
|
||||
"SettingNAChar": " NA"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": [
|
||||
"Opzioni",
|
||||
"alimentaz"
|
||||
],
|
||||
"desc": "Menù d'impostazioni per l'alimentazione"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": [
|
||||
"Opzioni",
|
||||
"saldatura"
|
||||
],
|
||||
"desc": "Menù d'impostazioni della modalità Saldatura"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": [
|
||||
"Risparmio",
|
||||
"energetico"
|
||||
],
|
||||
"desc": "Menù d'impostazioni per il risparmio energetico"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": [
|
||||
"Interfaccia",
|
||||
"utente"
|
||||
],
|
||||
"desc": "Menù d'impostazioni dell'interfaccia utente"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": [
|
||||
"Opzioni",
|
||||
"avanzate"
|
||||
],
|
||||
"desc": "Menù d'impostazioni avanzate"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": [
|
||||
"Sorgente",
|
||||
"alimentaz"
|
||||
],
|
||||
"desc": "Imposta una tensione minima di alimentazione attraverso la selezione di una sorgente [DC: 10 V; 3S/4S/5S/6S: 3,3 V per cella]"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": [
|
||||
"Temp",
|
||||
"riposo"
|
||||
],
|
||||
"desc": "Imposta la temperatura da mantenere in modalità Riposo [°C/°F]"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": [
|
||||
"Timer",
|
||||
"riposo"
|
||||
],
|
||||
"desc": "Imposta il timer per entrare in modalità Riposo [minuti/secondi]"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": [
|
||||
"Timer",
|
||||
"spegnimento"
|
||||
],
|
||||
"desc": "Imposta il timer per lo spegnimento [minuti]"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": [
|
||||
"Sensibilità",
|
||||
"al movimento"
|
||||
],
|
||||
"desc": "Imposta la sensibilità al movimento per uscire dalla modalità Riposo [0: nessuna; 1: minima; 9: massima]"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": [
|
||||
"Unità di",
|
||||
"temperatura"
|
||||
],
|
||||
"desc": "Scegli l'unità di misura per la temperatura [C: grado Celsius; F: grado Farenheit]"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": [
|
||||
"Interfaccia",
|
||||
"testuale"
|
||||
],
|
||||
"desc": "Mostra informazioni dettagliate all'interno della schermata principale"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": [
|
||||
"Orientamento",
|
||||
"schermo"
|
||||
],
|
||||
"desc": "Imposta l'orientamento dello schermo [D: mano destra; S: mano sinistra; A: automatico]"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": [
|
||||
"Temp",
|
||||
"Turbo"
|
||||
],
|
||||
"desc": "Imposta la temperatura della funzione Turbo [°C/°F]"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": [
|
||||
"Avvio",
|
||||
"automatico"
|
||||
],
|
||||
"desc": "Attiva automaticamente il saldatore quando viene alimentato [D: disattiva; S: saldatura; R: riposo; A: temperatura ambiente]"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": [
|
||||
"Avviso",
|
||||
"punta calda"
|
||||
],
|
||||
"desc": "Evidenzia il valore di temperatura durante il raffreddamento se la punta è ancora calda"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": [
|
||||
"Calibrazione",
|
||||
"temperatura"
|
||||
],
|
||||
"desc": "Calibra le rilevazioni di temperatura"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": [
|
||||
"Ripristino",
|
||||
"impostazioni"
|
||||
],
|
||||
"desc": "Ripristina le impostazioni allo stato iniziale"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": [
|
||||
"Calibrazione",
|
||||
"tensione"
|
||||
],
|
||||
"desc": "Calibra la tensione in ingresso; regola con entrambi i tasti, tieni premuto il tasto superiore per uscire"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": [
|
||||
"Dettagli",
|
||||
"saldatura"
|
||||
],
|
||||
"desc": "Mostra informazioni dettagliate durante la modalità Saldatura"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": [
|
||||
"Velocità",
|
||||
"testo"
|
||||
],
|
||||
"desc": "Imposta la velocità di scorrimento del testo [L: lenta; V: veloce]"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": [
|
||||
"Voltaggio",
|
||||
"QC"
|
||||
],
|
||||
"desc": "Imposta il massimo voltaggio negoziabile con un alimentatore Quick Charge [volt]"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": [
|
||||
"Abilitazione",
|
||||
"USB PD"
|
||||
],
|
||||
"desc": "Regola il massimo tempo utile per la negoziazione del protocollo USB Power Delivery con alimentatori compatibili [0: disattiva; multipli di 100 ms]"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": [
|
||||
"Limite",
|
||||
"potenza"
|
||||
],
|
||||
"desc": "Imposta il valore di potenza massima erogabile al saldatore [watt]"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": [
|
||||
"Inversione",
|
||||
"tasti"
|
||||
],
|
||||
"desc": "Inverti i tasti per aumentare o diminuire la temperatura della punta"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": [
|
||||
"Temp passo",
|
||||
"breve"
|
||||
],
|
||||
"desc": "Imposta il passo dei valori di temperatura per una breve pressione dei tasti"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": [
|
||||
"Temp passo",
|
||||
"lungo"
|
||||
],
|
||||
"desc": "Imposta il passo dei valori di temperatura per una lunga pressione dei tasti"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": [
|
||||
"Potenza",
|
||||
"impulso"
|
||||
],
|
||||
"desc": "Regola la potenza di un \"impulso sveglia\" atto a prevenire lo standby eventuale dell'alimentatore [watt]"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": [
|
||||
"Sensore",
|
||||
"Hall"
|
||||
],
|
||||
"desc": "Regola la sensibilità alla rilevazione di supporti metallici per entrare in modalità Riposo [O: OFF; B: bassa; M: media; A: alta]"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": [
|
||||
"Blocco",
|
||||
"tasti"
|
||||
],
|
||||
"desc": "Blocca i tasti durante la modalità Saldatura; tieni premuto entrambi per bloccare o sbloccare [D: disattiva; T: consenti Turbo; C: blocco completo]"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": [
|
||||
"Tensione",
|
||||
"min celle"
|
||||
],
|
||||
"desc": "Modifica la tensione di minima carica delle celle di una batteria Li-Po [3S: 3,0-3,7 V; 4S/5S/6S: 2,4-3,7 V]"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": [
|
||||
"Ciclo",
|
||||
"animazioni"
|
||||
],
|
||||
"desc": "Abilita la riproduzione ciclica delle animazioni del menù principale"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": [
|
||||
"Velocità",
|
||||
"animazioni"
|
||||
],
|
||||
"desc": "Imposta la velocità di riproduzione delle animazioni del menù principale [O: OFF; L: lenta; M: media; V: veloce]"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": [
|
||||
"Distanza",
|
||||
"impulsi"
|
||||
],
|
||||
"desc": "Imposta il tempo che deve intercorrere tra due \"impulsi sveglia\" [multipli di 2,5 s]"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": [
|
||||
"Durata",
|
||||
"impulso"
|
||||
],
|
||||
"desc": "Regola la durata dell'«impulso sveglia» [multipli di 250 ms]"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": [
|
||||
"Lingua:",
|
||||
" IT Italiano"
|
||||
],
|
||||
"desc": "Imposta la lingua del dispositivo"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": [
|
||||
"Luminosità",
|
||||
"schermo"
|
||||
],
|
||||
"desc": "Regola la luminosità dello schermo [1: minimo; 10: massimo]"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": [
|
||||
"Inverti",
|
||||
"colori"
|
||||
],
|
||||
"desc": "Inverti i colori dello schermo"
|
||||
}
|
||||
}
|
||||
"languageCode": "IT",
|
||||
"languageLocalName": "Italiano",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Assicurarsi che la punta si trovi a temperatura ambiente prima di continuare!",
|
||||
"SettingsResetWarning": "Ripristinare le impostazioni iniziali?",
|
||||
"UVLOWarningString": "DC BASSA",
|
||||
"UndervoltageString": "DC INSUFFICIENTE",
|
||||
"InputVoltageString": "V in:",
|
||||
"SleepingSimpleString": "Zzz ",
|
||||
"SleepingAdvancedString": "Riposo",
|
||||
"SleepingTipAdvancedString": "Punta:",
|
||||
"OffString": "OFF"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Impostazioni", "ripristinate"],
|
||||
"NoAccelerometerMessage": ["Accelerometro", "non rilevato"],
|
||||
"NoPowerDeliveryMessage": ["USB PD", "non rilevato"],
|
||||
"LockingKeysString": "Blocc.",
|
||||
"UnlockingKeysString": "Sblocc.",
|
||||
"WarningKeysLockedString": "BLOCCATO",
|
||||
"WarningThermalRunaway": ["Temperatura", "fuori controllo"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
"SettingLeftChar": "S",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "L",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "V",
|
||||
"SettingStartNoneChar": "D",
|
||||
"SettingStartSolderingChar": "S",
|
||||
"SettingStartSleepChar": "R",
|
||||
"SettingStartSleepOffChar": "A",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "B",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityHigh": "A",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "T",
|
||||
"SettingLockFullChar": "C"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Opzioni", "alimentaz"],
|
||||
"desc": "Menù d'impostazioni per l'alimentazione"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Opzioni", "saldatura"],
|
||||
"desc": "Menù d'impostazioni della modalità Saldatura"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Risparmio", "energetico"],
|
||||
"desc": "Menù d'impostazioni per il risparmio energetico"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Interfaccia", "utente"],
|
||||
"desc": "Menù d'impostazioni dell'interfaccia utente"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Opzioni", "avanzate"],
|
||||
"desc": "Menù d'impostazioni avanzate"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Sorgente", "alimentaz"],
|
||||
"desc": "Imposta una tensione minima di alimentazione attraverso la selezione di una sorgente [DC: 10 V; 3S/4S/5S/6S: 3,3 V per cella]"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Temp", "riposo"],
|
||||
"desc": "Imposta la temperatura da mantenere in modalità Riposo [°C/°F]"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Timer", "riposo"],
|
||||
"desc": "Imposta il timer per entrare in modalità Riposo [secondi/minuti]"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Timer", "spegnimento"],
|
||||
"desc": "Imposta il timer per lo spegnimento [minuti]"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Sensibilità", "al movimento"],
|
||||
"desc": "Imposta la sensibilità al movimento per uscire dalla modalità Riposo [0: nessuna; 1: minima; 9: massima]"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Unità di", "temperatura"],
|
||||
"desc": "Scegli l'unità di misura per la temperatura [C: grado Celsius; F: grado Farenheit]"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Interfaccia", "testuale"],
|
||||
"desc": "Mostra informazioni dettagliate all'interno della schermata principale"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Orientamento", "schermo"],
|
||||
"desc": "Imposta l'orientamento dello schermo [D: mano destra; S: mano sinistra; A: automatico]"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Temp", "Turbo"],
|
||||
"desc": "Imposta la temperatura della funzione Turbo [°C/°F]"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Avvio", "automatico"],
|
||||
"desc": "Attiva automaticamente il saldatore quando viene alimentato [D: disattiva; S: saldatura; R: riposo; A: temperatura ambiente]"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Avviso", "punta calda"],
|
||||
"desc": "Evidenzia il valore di temperatura durante il raffreddamento se la punta è ancora calda"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Calibrazione", "temperatura"],
|
||||
"desc": "Calibra le rilevazioni di temperatura"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Ripristino", "impostazioni"],
|
||||
"desc": "Ripristina le impostazioni allo stato iniziale"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Calibrazione", "tensione"],
|
||||
"desc": "Calibra la tensione in ingresso; regola con entrambi i tasti, tieni premuto il tasto superiore per uscire"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Dettagli", "saldatura"],
|
||||
"desc": "Mostra informazioni dettagliate durante la modalità Saldatura"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Velocità", "testo"],
|
||||
"desc": "Imposta la velocità di scorrimento del testo [L: lenta; V: veloce]"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Voltaggio", "QC"],
|
||||
"desc": "Imposta il massimo voltaggio negoziabile con un alimentatore Quick Charge [volt]"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["Abilitazione", "USB PD"],
|
||||
"desc": "Regola il massimo tempo utile per la negoziazione del protocollo USB Power Delivery con alimentatori compatibili [0: disattiva; multipli di 100 ms]"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Limite", "potenza"],
|
||||
"desc": "Imposta il valore di potenza massima erogabile al saldatore [watt]"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Inversione", "tasti"],
|
||||
"desc": "Inverti i tasti per aumentare o diminuire la temperatura della punta"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp passo", "breve"],
|
||||
"desc": "Imposta il passo dei valori di temperatura per una breve pressione dei tasti"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp passo", "lungo"],
|
||||
"desc": "Imposta il passo dei valori di temperatura per una lunga pressione dei tasti"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Potenza", "impulso"],
|
||||
"desc": "Regola la potenza di un \"impulso sveglia\" atto a prevenire lo standby eventuale dell'alimentatore [watt]"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Sensore", "Hall"],
|
||||
"desc": "Regola la sensibilità del sensore ad effetto Hall per entrare in modalità Riposo [0: nessuna; 1: minima; 9: massima]"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Blocco", "tasti"],
|
||||
"desc": "Blocca i tasti durante la modalità Saldatura; tieni premuto entrambi per bloccare o sbloccare [D: disattiva; T: consenti Turbo; C: blocco completo]"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Tensione", "min celle"],
|
||||
"desc": "Modifica la tensione di minima carica delle celle di una batteria Li-Po [3S: 3,0-3,7 V; 4S/5S/6S: 2,4-3,7 V]"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Ciclo", "animazioni"],
|
||||
"desc": "Abilita la riproduzione ciclica delle animazioni del menù principale"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Velocità", "animazioni"],
|
||||
"desc": "Imposta la velocità di riproduzione delle animazioni del menù principale [O: OFF; L: lenta; M: media; V: veloce]"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Distanza", "impulsi"],
|
||||
"desc": "Imposta il tempo che deve intercorrere tra due \"impulsi sveglia\" [multipli di 2,5 s]"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Durata", "impulso"],
|
||||
"desc": "Regola la durata dell'«impulso sveglia» [multipli di 250 ms]"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Lingua:", " IT Italiano"],
|
||||
"desc": "Imposta la lingua del dispositivo"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Luminosità", "schermo"],
|
||||
"desc": "Regola la luminosità dello schermo [1: minimo; 10: massimo]"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Inverti", "colori"],
|
||||
"desc": "Inverti i colori dello schermo"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Durata", "logo"],
|
||||
"desc": "Imposta la permanenza sullo schermo del logo iniziale [secondi]"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,25 +4,15 @@
|
||||
"fonts": ["ascii_basic", "cjk"],
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "校正完了",
|
||||
"SettingsCalibrationWarning": "続行する前に、コテ先が室温と同じになっていることを確認してください",
|
||||
"SettingsResetWarning": "設定をリセットしますか?",
|
||||
"UVLOWarningString": "DC電圧が低すぎます",
|
||||
"UndervoltageString": "電圧不足",
|
||||
"InputVoltageString": "入力電圧 V: ",
|
||||
"WarningTipTempString": "コテ先温度: ",
|
||||
"BadTipString": "コテ先エラー",
|
||||
"UVLOWarningString": "電圧が低すぎます",
|
||||
"UndervoltageString": "Undervoltage",
|
||||
"InputVoltageString": "Input V: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "スリープ中...",
|
||||
"WarningSimpleString": "高温注意!",
|
||||
"WarningAdvancedString": "!!! コテ先高温 !!!",
|
||||
"SleepingTipAdvancedString": "コテ先:",
|
||||
"IdleTipString": "コテ先:",
|
||||
"IdleSetString": " 設定:",
|
||||
"TipDisconnectedString": "コテ先が接続されていません",
|
||||
"SolderingAdvancedPowerPrompt": "電源: ",
|
||||
"OffString": "オフ",
|
||||
"YourGainMessage": "ゲイン:"
|
||||
"SleepingAdvancedString": "Sleeping...",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"OffString": "オフ"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "リセットOK",
|
||||
@@ -52,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "高",
|
||||
"SettingLockDisableChar": "×",
|
||||
"SettingLockBoostChar": "ブ",
|
||||
"SettingLockFullChar": "全",
|
||||
"SettingNAChar": "非適用"
|
||||
"SettingLockFullChar": "全"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -88,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": "待機遅延",
|
||||
"desc": "スタンバイモードに入るまでの待機時間 <S=秒 | M=分>"
|
||||
"desc": "スタンバイモードに入るまでの待機時間 <s=秒 | m=分>"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": "自動オフ",
|
||||
"desc": "自動電源オフまでの待機時間 <M=分>"
|
||||
"desc": "自動電源オフまでの待機時間 <m=分>"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": "動きの感度",
|
||||
@@ -172,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": "磁界感度",
|
||||
"desc": "スタンバイモードに入るのに使用される磁場センサーの感度 <×=オフ | 低=最低感度 | 中=中程度の感度 | 高=最高感度>"
|
||||
"desc": "スタンバイモードに入るのに使用される磁場センサーの感度 <0=オフ | 1=最低感度 | ... | 9=最高感度>"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": "ボタンロック",
|
||||
@@ -209,6 +198,10 @@
|
||||
"ColourInversion": {
|
||||
"text2": "色反転",
|
||||
"desc": "画面の色を反転する"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,33 +2,24 @@
|
||||
"languageCode": "LT",
|
||||
"languageLocalName": "Lietuvių",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibravimas atliktas!",
|
||||
"SettingsCalibrationWarning": "Prieš tęsdami įsitikinkite, kad antgalis yra kambario temperatūros!",
|
||||
"SettingsResetWarning": "Ar norite atstatyti nustatymus į numatytas reikšmes?",
|
||||
"UVLOWarningString": "MAŽ VOLT",
|
||||
"UndervoltageString": "Žema įtampa",
|
||||
"InputVoltageString": "Įvestis V: ",
|
||||
"WarningTipTempString": "Angal Temp: ",
|
||||
"BadTipString": "BLOG ANT",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Miegu...",
|
||||
"WarningSimpleString": "KRŠ!",
|
||||
"WarningAdvancedString": "ANTGALIS KARŠTAS",
|
||||
"SleepingTipAdvancedString": "Antg: ",
|
||||
"IdleTipString": "Ant:",
|
||||
"IdleSetString": " Nust:",
|
||||
"TipDisconnectedString": "NĖRA ANTGALIO",
|
||||
"SolderingAdvancedPowerPrompt": "Galia: ",
|
||||
"OffString": "Išj",
|
||||
"YourGainMessage": "Greitis:"
|
||||
"SleepingTipAdvancedString": "Antg:",
|
||||
"OffString": "Išj"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Atstatytas OK",
|
||||
"ResetOKMessage": "Atstatyta",
|
||||
"SettingsResetMessage": ["Nust. atstatyti!", ""],
|
||||
"NoAccelerometerMessage": ["Nerastas", "akselerometras!"],
|
||||
"NoPowerDeliveryMessage": ["Nerastas", "USB-PD IC !"],
|
||||
"LockingKeysString": " UŽRAKIN",
|
||||
"NoPowerDeliveryMessage": ["Nerastas", "USB-PD IC!"],
|
||||
"LockingKeysString": "UŽRAKIN",
|
||||
"UnlockingKeysString": "ATRAKIN",
|
||||
"WarningKeysLockedString": "!UŽRAK!",
|
||||
"WarningThermalRunaway": ["Perkaitimo", "pavojus"]
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "A",
|
||||
"SettingLockDisableChar": "I",
|
||||
"SettingLockBoostChar": "T",
|
||||
"SettingLockFullChar": "V",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "V"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -83,7 +73,7 @@
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Miego", "temperat."],
|
||||
"desc": "Miego temperatūra"
|
||||
"desc": "Antgalio temperatūra miego režimu"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Miego", "laikas"],
|
||||
@@ -146,8 +136,8 @@
|
||||
"desc": "Maksimali QC maitinimo bloko įtampa"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"text2": ["PD", "laikas"],
|
||||
"desc": "PD suderinimo laikas žingsniais po 100ms suderinamumui su kai kuriais QC įkrovikliais"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Galios", "riba"],
|
||||
@@ -155,15 +145,15 @@
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Sukeisti + -", "mygtukus?"],
|
||||
"desc": "Sukeisti + - temperatūros keitimo mygtukus vietomis."
|
||||
"desc": "Sukeisti + - temperatūros keitimo mygtukus vietomis"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp.keitim.", "trump.spust."],
|
||||
"desc": "Temperatūros keitimo žingsnis trumpai spustėlėjus mygtuką!"
|
||||
"desc": "Temperatūros keitimo žingsnis trumpai spustėlėjus mygtuką"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp.keitim.", "ilgas pasp."],
|
||||
"desc": "Temperatūros keitimo žingsnis ilgai paspaudus mygtuką!"
|
||||
"desc": "Temperatūros keitimo žingsnis ilgai paspaudus mygtuką"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Galios", "pulso W"],
|
||||
@@ -171,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Holo", "jutiklis"],
|
||||
"desc": "Holo jutiklio jautrumas nustatant miegą (I=Išjungtas | Ž=Žemas | V=Vidutinis | A=Aukštas)"
|
||||
"desc": "Holo jutiklio jautrumas nustatant miegą (0=Išjungta | 1=Mažiausias | ... | 9=Didžiausias)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Mygtukų", "užraktas"],
|
||||
@@ -183,7 +173,7 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Animacijų", "pakartojimas"],
|
||||
"desc": "Leidžia kartoti animacijas be sustojimo pagrindiniame meniu."
|
||||
"desc": "Leidžia kartoti animacijas be sustojimo pagrindiniame meniu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Animacijų", "greitis"],
|
||||
@@ -191,7 +181,7 @@
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Galios pulso", "dažnumas"],
|
||||
"desc": "Pasikartojantis laiko intervalas (x 2.5s), ties kuriuo kartojamas galios pulsas maitinblokiui, neleidžiantis jam užmigti."
|
||||
"desc": "Pasikartojantis laiko intervalas (x 2.5s), ties kuriuo kartojamas galios pulsas maitinblokiui, neleidžiantis jam užmigti"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Galios pulso", "trukmė"],
|
||||
@@ -199,7 +189,7 @@
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Kalba:", " LT Lietuvių"],
|
||||
"desc": ""
|
||||
"desc": "Dabartinė programinės įrangos kalba"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Ekrano", "šviesumas"],
|
||||
@@ -207,7 +197,11 @@
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Ekrano", "invertavimas"],
|
||||
"desc": "Invertuoja OLED ekrano spalvas."
|
||||
"desc": "Invertuoja OLED ekrano spalvas"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,213 +1,339 @@
|
||||
{
|
||||
"languageCode": "NL",
|
||||
"languageLocalName": "Nederlands",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Calibratie klaar!",
|
||||
"SettingsCalibrationWarning": "Zorg ervoor dat te punt op kamertemperatuur is voor je verder gaat!",
|
||||
"SettingsResetWarning": "Weet je zeker dat je de fabrieksinstellingen terug wil zetten?",
|
||||
"UVLOWarningString": "DC Laag",
|
||||
"UndervoltageString": "Onderspanning",
|
||||
"InputVoltageString": "Input V: ",
|
||||
"WarningTipTempString": "Punt temp: ",
|
||||
"BadTipString": "DEFECTE PUNT",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Slaapstand...",
|
||||
"WarningSimpleString": "HEET!",
|
||||
"WarningAdvancedString": "!!! PUNT HOT !!!",
|
||||
"SleepingTipAdvancedString": "Punt:",
|
||||
"IdleTipString": "Punt:",
|
||||
"IdleSetString": " Zet:",
|
||||
"TipDisconnectedString": "PUNT LOSGEKOPPELT",
|
||||
"SolderingAdvancedPowerPrompt": "Vermogen: ",
|
||||
"OffString": "Uit",
|
||||
"YourGainMessage": "Niveau:"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Instellingen", "zijn gereset!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " GEBLOKKEERD",
|
||||
"UnlockingKeysString": "GEDEBLOKKEERD",
|
||||
"WarningKeysLockedString": "!GEBLOKKEERD!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "S",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "F",
|
||||
"SettingStartNoneChar": "F",
|
||||
"SettingStartSolderingChar": "T",
|
||||
"SettingStartSleepChar": "S",
|
||||
"SettingStartSleepOffChar": "K",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "L",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "U",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "V",
|
||||
"SettingNAChar": "N/A"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Power", "settings"],
|
||||
"desc": "Power settings"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Soldeer", "Instellingen"],
|
||||
"desc": "Soldeer instellingen"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Slaap", "Modes"],
|
||||
"desc": "Stroom besparings instellingen"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Gebruikers-", "interface"],
|
||||
"desc": "Gebruikers-interface instellingen"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Geavanceerde", "Instellingen"],
|
||||
"desc": "Geavanceerde Instellingen"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Spannings-", "bron"],
|
||||
"desc": "Spanningsbron. Stelt drempelspanning in. (DC 10V) (S 3.3V per cel)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Slaap", "temp"],
|
||||
"desc": "Temperatuur in slaapstand"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Slaap", "time-out"],
|
||||
"desc": "Slaap time-out (Minuten | Seconden)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Uitschakel", "time-out"],
|
||||
"desc": "Automatisch afsluiten time-out (Minuten)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Bewegings-", "gevoeligheid"],
|
||||
"desc": "Bewegingsgevoeligheid (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Temperatuur", "eenheid"],
|
||||
"desc": "Temperatuureenheid (C=Celsius | F=Fahrenheit)"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Gedetailleerd", "startscherm"],
|
||||
"desc": "Gedetailleerde informatie weergeven in een kleiner lettertype op het startscherm."
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Scherm-", "oriëntatie"],
|
||||
"desc": "Schermoriëntatie (R=Rechtshandig | L=Linkshandig | A=Automatisch)"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Boost", "temp"],
|
||||
"desc": "Temperatuur in boostmode"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Auto", "start"],
|
||||
"desc": "Breng de soldeerbout direct op temperatuur bij het opstarten. (F=Uit | T=Soldeertemperatuur | S=Slaapstand-temperatuur | K=Slaapstand kamertemperatuur)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Afkoel", "flikker"],
|
||||
"desc": "Temperatuur laten flikkeren in het hoofdmenu als de soldeerpunt aan het afkoelen is."
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Calibreer", "temperatuur?"],
|
||||
"desc": "Temperatuursafwijking van de soldeerpunt calibreren."
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Instellingen", "resetten?"],
|
||||
"desc": "Alle instellingen terugzetten."
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Calibreer", "input-voltage?"],
|
||||
"desc": "VIN Calibreren. (druk lang om te sluiten)."
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Gedetailleerd", "soldeerscherm"],
|
||||
"desc": "Gedetailleerde informatie weergeven in een kleiner lettertype op het soldeerscherm."
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Scroll", "snelheid"],
|
||||
"desc": "Snelheid waarmee de tekst scrolt."
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Power", "Wattage"],
|
||||
"desc": "Wattage van de gebruikte voeding"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Vermogen", "limiet"],
|
||||
"desc": "Maximaal vermogen (Watts)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Draai", "+ - knoppen om"],
|
||||
"desc": "Keer de +- knoppen om de termperatuur van de punt te regelen 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": ["Vermogen", "Puls W"],
|
||||
"desc": "Vermogen van puls om soldeerbout aan te houden"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Blokkeer", "knoppen"],
|
||||
"desc": "Tijdens solderen lang op beide knoppen drukken, blokkeert ze. (U=Uit | B=Alleen boost | V=Volledig blokkeren)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
"desc": "Minimum allowed voltage per cell (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
"desc": "Keep-awake-pulse duration (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Spraak :", " NL Nederlands"],
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
"languageCode": "NL",
|
||||
"languageLocalName": "Nederlands",
|
||||
"fonts": [
|
||||
"ascii_basic",
|
||||
"latin_extended"
|
||||
],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Zorg ervoor dat de punt op kamertemperatuur is voor je verder gaat!",
|
||||
"SettingsResetWarning": "Weet je zeker dat je de fabrieksinstellingen terug wilt zetten?",
|
||||
"UVLOWarningString": "DC Laag",
|
||||
"UndervoltageString": "Onderspanning",
|
||||
"InputVoltageString": "Voeding V: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Slaapstand...",
|
||||
"SleepingTipAdvancedString": "Punt:",
|
||||
"OffString": "Uit"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": [
|
||||
"Instellingen",
|
||||
"zijn gereset!"
|
||||
],
|
||||
"NoAccelerometerMessage": [
|
||||
"Geen accelerometer",
|
||||
"gedetecteerd!"
|
||||
],
|
||||
"NoPowerDeliveryMessage": [
|
||||
"Geen USB-PD IC ",
|
||||
"gedetecteerd!"
|
||||
],
|
||||
"LockingKeysString": "GEBLOKKEERD",
|
||||
"UnlockingKeysString": "GEDEBLOKKEERD",
|
||||
"WarningKeysLockedString": "!GEBLOKKEERD!",
|
||||
"WarningThermalRunaway": [
|
||||
"Verwarming",
|
||||
"Oncontroleerbaar"
|
||||
]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "U",
|
||||
"SettingSlowChar": "L",
|
||||
"SettingMediumChar": "G",
|
||||
"SettingFastChar": "S",
|
||||
"SettingStartNoneChar": "U",
|
||||
"SettingStartSolderingChar": "G",
|
||||
"SettingStartSleepChar": "S",
|
||||
"SettingStartSleepOffChar": "B",
|
||||
"SettingSensitivityOff": "U",
|
||||
"SettingSensitivityLow": "L",
|
||||
"SettingSensitivityMedium": "G",
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "U",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "V"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": [
|
||||
"Voeding",
|
||||
"instellingen"
|
||||
],
|
||||
"desc": "Voeding instellingen"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": [
|
||||
"Soldeer",
|
||||
"instellingen"
|
||||
],
|
||||
"desc": "Soldeer instellingen"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": [
|
||||
"Slaap",
|
||||
"Modes"
|
||||
],
|
||||
"desc": "Stroom besparings instellingen"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": [
|
||||
"Weergave",
|
||||
"instellingen"
|
||||
],
|
||||
"desc": "Weergave instellingen"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": [
|
||||
"Geavanceerde",
|
||||
"instellingen"
|
||||
],
|
||||
"desc": "Geavanceerde instellingen"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": [
|
||||
"Spannings-",
|
||||
"bron"
|
||||
],
|
||||
"desc": "Spanningsbron. Stelt drempelspanning in. (DC 10V) (S 3.3V per cel)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": [
|
||||
"Slaap",
|
||||
"temp"
|
||||
],
|
||||
"desc": "Punt temperatuur in slaapstand"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": [
|
||||
"Slaap",
|
||||
"time-out"
|
||||
],
|
||||
"desc": "Tijd voordat slaapmodus wordt geactiveerd (S=seconden | M=minuten)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": [
|
||||
"Uitschakel",
|
||||
"time-out"
|
||||
],
|
||||
"desc": "Tijd voordat soldeerbout automatisch uitschakelt (M=minuten)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": [
|
||||
"Bewegings-",
|
||||
"gevoeligheid"
|
||||
],
|
||||
"desc": "Bewegingsgevoeligheid (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": [
|
||||
"Temperatuur",
|
||||
"eenheid"
|
||||
],
|
||||
"desc": "Temperatuureenheid (C=Celsius | F=Fahrenheit)"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": [
|
||||
"Gedetailleerd",
|
||||
"startscherm"
|
||||
],
|
||||
"desc": "Gedetailleerde informatie weergeven in een kleine letters op het startscherm."
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": [
|
||||
"Scherm-",
|
||||
"oriëntatie"
|
||||
],
|
||||
"desc": "Schermoriëntatie (R=Rechtshandig | L=Linkshandig | A=Automatisch)"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": [
|
||||
"Boost",
|
||||
"temp"
|
||||
],
|
||||
"desc": "Punt temperatuur in boostmode"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": [
|
||||
"Opstart",
|
||||
"gedrag"
|
||||
],
|
||||
"desc": "Gedrag bij opstarten (U=Uit | G=Gebruiks-temperatuur | S=Slaapstand-temperatuur tot beweging | B=Uit tot beweging)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": [
|
||||
"Afkoel",
|
||||
"flitsen"
|
||||
],
|
||||
"desc": "Temperatuur laten flitsen in het hoofdmenu zo lang de punt nog warm is"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": [
|
||||
"Kalibreer",
|
||||
"temperatuur?"
|
||||
],
|
||||
"desc": "Start punt temperatuur-kalibratie"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": [
|
||||
"Instellingen",
|
||||
"resetten?"
|
||||
],
|
||||
"desc": "Alle instellingen terugzetten naar fabrieksinstellingen"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": [
|
||||
"Kalibreer",
|
||||
"input-voltage?"
|
||||
],
|
||||
"desc": "Start VIN Kalibratie (druk lang om te sluiten)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": [
|
||||
"Gedetailleerd",
|
||||
"soldeerscherm"
|
||||
],
|
||||
"desc": "Gedetailleerde informatie weergeven in een kleiner lettertype op het soldeerscherm"
|
||||
},
|
||||
"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)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,33 +2,24 @@
|
||||
"languageCode": "NL_BE",
|
||||
"languageLocalName": "Vlaams",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Gecalibreerd!",
|
||||
"SettingsCalibrationWarning": "Zorg vooraf dat de punt op kamertemperatuur is!",
|
||||
"SettingsResetWarning": "Ben je zeker dat je alle standaardwaarden wil resetten?",
|
||||
"UVLOWarningString": "Voedingsspanning LAAG",
|
||||
"UndervoltageString": "Onderspanning",
|
||||
"InputVoltageString": "Voedingsspanning: ",
|
||||
"WarningTipTempString": "Punt Temp: ",
|
||||
"BadTipString": "DEFECT",
|
||||
"SleepingSimpleString": "Zzz ",
|
||||
"SleepingAdvancedString": "Slaapstand...",
|
||||
"WarningSimpleString": "HEET",
|
||||
"WarningAdvancedString": "!!! PUNT HEET !!!",
|
||||
"SleepingTipAdvancedString": "Punt:",
|
||||
"IdleTipString": "Punt:",
|
||||
"IdleSetString": "Stel in:",
|
||||
"TipDisconnectedString": "Punt ONTKOPPELD",
|
||||
"SolderingAdvancedPowerPrompt": "Vermogen: ",
|
||||
"OffString": "Uit",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Uit"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " LOCKED",
|
||||
"LockingKeysString": "LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -147,35 +137,35 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"desc": "Reverse the tip temperature change buttons plus minus assignment."
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"desc": "Temperature change steps on short button press!"
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Temperature-change-increment on short button press"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"desc": "Temperature change steps on long button press!"
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Temperature-change-increment on long button press"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"desc": "Keep awake pulse power intensity"
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Intensity of power of keep-awake-pulse (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=uit | 1=minst gevoelig | ... | 9=meest gevoelig)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -183,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | T=slow | M=medium | S=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,33 +2,24 @@
|
||||
"languageCode": "NO",
|
||||
"languageLocalName": "Norsk",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Calibration done!",
|
||||
"SettingsCalibrationWarning": "Sørg for at loddespissen har romtemperatur før du fortsetter!",
|
||||
"SettingsResetWarning": "Er du sikker på at du vil tilbakestille til standardinnstillinger?",
|
||||
"UVLOWarningString": "Lavspenn",
|
||||
"UndervoltageString": "Underspenning",
|
||||
"InputVoltageString": "Innspenn.: ",
|
||||
"WarningTipTempString": "Spisstemp: ",
|
||||
"BadTipString": "BAD TIP",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Dvale...",
|
||||
"WarningSimpleString": "Varm",
|
||||
"WarningAdvancedString": "VARM SPISS!",
|
||||
"SleepingTipAdvancedString": "Spiss:",
|
||||
"IdleTipString": "Spiss:",
|
||||
"IdleSetString": "Set:",
|
||||
"TipDisconnectedString": "SPISS FRAKOBLET",
|
||||
"SolderingAdvancedPowerPrompt": "Effekt: ",
|
||||
"OffString": "Av",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Av"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": " LOCKED",
|
||||
"LockingKeysString": "LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
@@ -38,9 +29,9 @@
|
||||
"SettingLeftChar": "V",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "L",
|
||||
"SettingSlowChar": "S",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "H",
|
||||
"SettingFastChar": "F",
|
||||
"SettingStartNoneChar": "I",
|
||||
"SettingStartSolderingChar": "L",
|
||||
"SettingStartSleepChar": "D",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -142,40 +132,40 @@
|
||||
"desc": "Hastigheten på rulletekst"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Power", "Wattage"],
|
||||
"desc": "Power Wattage of the power adapter used"
|
||||
"text2": ["QC", "voltage"],
|
||||
"desc": "Max QC voltage the iron should negotiate for"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"desc": "Reverse the tip temperature change buttons plus minus assignment."
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"desc": "Temperature change steps on short button press!"
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Temperature-change-increment on short button press"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"desc": "Temperature change steps on long button press!"
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Temperature-change-increment on long button press"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"desc": "Keep awake pulse power intensity"
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Intensity of power of keep-awake-pulse (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=Inaktiv | 1=Minst følsom | ... | 9=Mest følsom)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -183,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | F=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,25 +4,15 @@
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibracja udana!",
|
||||
"SettingsCalibrationWarning": "Przed kontynuowaniem upewnij się, że końcówka osiągnęła temperaturę pokojową!",
|
||||
"SettingsResetWarning": "Czy na pewno chcesz przywrócić ustawienia fabryczne?",
|
||||
"UVLOWarningString": "NIS. NAP",
|
||||
"UndervoltageString": "Zbyt niskie nap.",
|
||||
"InputVoltageString": "Nap. wej.:",
|
||||
"WarningTipTempString": "Temp. grotu:",
|
||||
"BadTipString": "ZŁY GROT",
|
||||
"SleepingSimpleString": "Zzz!",
|
||||
"SleepingAdvancedString": "Tr. uśpienia",
|
||||
"WarningSimpleString": "HOT!",
|
||||
"WarningAdvancedString": "GORĄCA KOŃCÓWKA!",
|
||||
"SleepingTipAdvancedString": "Grot:",
|
||||
"IdleTipString": "Grot:",
|
||||
"IdleSetString": " Ust:",
|
||||
"TipDisconnectedString": "GROT ODŁĄCZONY",
|
||||
"SolderingAdvancedPowerPrompt": "Moc: ",
|
||||
"OffString": "Wył",
|
||||
"YourGainMessage": "Us.zysk:"
|
||||
"OffString": "Wył"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
@@ -52,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "W",
|
||||
"SettingLockDisableChar": "W",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "P",
|
||||
"SettingNAChar": "N/D"
|
||||
"SettingLockFullChar": "P"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -172,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Czułość", "cz. Halla"],
|
||||
"desc": "Czułość czujnika Halla, używanego do przechodznia w tryb uśpienia (O=Wył | N=Niska | Ś=Średnia | W=Wysoka)"
|
||||
"desc": "Czułość czujnika Halla, używanego do przechodznia w tryb uśpienia (0: Wyłączona | 1: Minimalna | ... | 9: Maksymalna)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Blokada", "przycisków"],
|
||||
@@ -188,7 +177,7 @@
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Prędkosć", "animacji"],
|
||||
"desc": "Prędkość animacji ikon w menu (O: wył. | L: mała | M: średnia | H: duża)"
|
||||
"desc": "Prędkość animacji ikon w menu (O: wył. | W: mała | M: średnia | S: duża)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Czas między", "imp. mocy"],
|
||||
@@ -209,6 +198,10 @@
|
||||
"ColourInversion": {
|
||||
"text2": ["Odwrócenie", "kolorów"],
|
||||
"desc": "Odwrócenie kolorów wyświetlacza OLED"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Długość wyś.", "loga"],
|
||||
"desc": "Ustawia czas wyświetlania loga podczas uruchamiania (s=sekund)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,30 +2,21 @@
|
||||
"languageCode": "PT",
|
||||
"languageLocalName": "Português",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Calibração terminada!",
|
||||
"SettingsCalibrationWarning": "A ponta deve estar à temperatura ambiente antes de continuar!",
|
||||
"SettingsResetWarning": "Definições de fábrica?",
|
||||
"UVLOWarningString": "DC BAIXO",
|
||||
"UndervoltageString": "Subtensão",
|
||||
"InputVoltageString": "Tensão ",
|
||||
"WarningTipTempString": "Temperatura ",
|
||||
"BadTipString": "ER PONTA",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Repouso...",
|
||||
"WarningSimpleString": "TEMP",
|
||||
"WarningAdvancedString": "TEMP ELEVADA!",
|
||||
"SleepingTipAdvancedString": "Ponta:",
|
||||
"IdleTipString": "Ponta:",
|
||||
"IdleSetString": " Aj:",
|
||||
"TipDisconnectedString": "SEM PONTA",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": "LOCKED",
|
||||
@@ -38,9 +29,9 @@
|
||||
"SettingLeftChar": "C",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "L",
|
||||
"SettingSlowChar": "S",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "R",
|
||||
"SettingFastChar": "F",
|
||||
"SettingStartNoneChar": "D",
|
||||
"SettingStartSolderingChar": "S",
|
||||
"SettingStartSleepChar": "H",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -150,7 +140,7 @@
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
@@ -171,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (0=Desligado | 1=Menor | ... | 9=Maior)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
@@ -187,11 +177,11 @@
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | F=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,25 +4,15 @@
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Calibrare completa!",
|
||||
"SettingsCalibrationWarning": "Vă rugăm să vă asigurati că vârful este la temperatura camerei, înainte de a continua!",
|
||||
"SettingsResetWarning": "Sigur doriti să restaurati la setările implicite?",
|
||||
"UVLOWarningString": "DC LOW",
|
||||
"UndervoltageString": "Sub tensiune",
|
||||
"InputVoltageString": "Intrare V: ",
|
||||
"WarningTipTempString": "Temp. varf: ",
|
||||
"BadTipString": "VARF DEFECT",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Adormit...",
|
||||
"WarningSimpleString": "FIERBINTE!",
|
||||
"WarningAdvancedString": "!!! VARF FIERBINTE !!!",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"IdleTipString": "Tip:",
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "FĂRĂ VARF",
|
||||
"SolderingAdvancedPowerPrompt": "Putere: ",
|
||||
"OffString": "Nu",
|
||||
"YourGainMessage": "Coeficient:"
|
||||
"OffString": "Nu"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
@@ -52,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -88,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"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": {
|
||||
"text2": ["Expirare", "oprire"],
|
||||
"desc": "Interval înainte ca letconul să se oprească (M=minute)"
|
||||
"desc": "Interval înainte ca letconul să se oprească (m=minute)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Sensibilitate", "la mişcare"],
|
||||
@@ -172,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Sensibilitate", "senzor Hall"],
|
||||
"desc": "Sensibilitate senzor cu efect Hall pentru a detecta repausul (O=oprit | L=scăzut | M=mediu | H=înalt)"
|
||||
"desc": "Sensibilitate senzor cu efect Hall pentru a detecta repausul (0=oprit | 1=putin sensibil | ... | 9=cel mai sensibil)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Blocare", "butoane"],
|
||||
@@ -188,7 +177,7 @@
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Animatii", "viteză"],
|
||||
"desc": "Ritmul animatiilor pictogramei din meniu (O=oprit | S=încet | M=mediu | F=rapid)"
|
||||
"desc": "Ritmul animatiilor pictogramei din meniu (O=oprit | Î=încet | M=mediu | R=rapid)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Întârziere", "puls putere"],
|
||||
@@ -203,12 +192,16 @@
|
||||
"desc": "Limba curenta"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Ecranului", "luminozitatea"],
|
||||
"desc": "Ajusteaza luminozitatea ecranului"
|
||||
"text2": ["Ecranului", "luminozitatea"],
|
||||
"desc": "Ajusteaza luminozitatea ecranului"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Inverseaza", "culoarea"],
|
||||
"desc": "Inverseaza culoarea ecranului"
|
||||
"text2": ["Inverseaza", "culoarea"],
|
||||
"desc": "Inverseaza culoarea ecranului"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,44 +2,35 @@
|
||||
"languageCode": "RU",
|
||||
"languageLocalName": "Русский",
|
||||
"fonts": ["ascii_basic", "latin_extended", "cyrillic"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Калибровка завершена!",
|
||||
"SettingsCalibrationWarning": "Прежде чем продолжить, пожалуйста, убедитесь, что жало имеет комнатную температуру!",
|
||||
"SettingsResetWarning": "Вы уверены, что хотите сбросить настройки к значениям по умолчанию?",
|
||||
"UVLOWarningString": "НАПРЯЖ--",
|
||||
"UndervoltageString": "Низкое напряжение",
|
||||
"UndervoltageString": "Низ. напряжение",
|
||||
"InputVoltageString": "Питание В: ",
|
||||
"WarningTipTempString": "Темп. жала: ",
|
||||
"BadTipString": "ЖАЛО--",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Ожидание...",
|
||||
"WarningSimpleString": "ГОРЯЧО!",
|
||||
"WarningAdvancedString": "!!! ГОРЯЧЕЕ !!!\n!!! ЖАЛО !!!",
|
||||
"SleepingTipAdvancedString": "Жало:",
|
||||
"IdleTipString": "Жало:",
|
||||
"IdleSetString": " ->",
|
||||
"TipDisconnectedString": "ЖАЛО ОТСОЕДИНЕНО",
|
||||
"SolderingAdvancedPowerPrompt": "Питание: ",
|
||||
"OffString": "Выкл.",
|
||||
"YourGainMessage": "Прирост:"
|
||||
"OffString": "Вык"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Сброс OK",
|
||||
"SettingsResetMessage": ["Настройки", "сброшены!"],
|
||||
"NoAccelerometerMessage": ["Не определен", "акселерометр!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": "LOCKED",
|
||||
"UnlockingKeysString": "UNLOCKED",
|
||||
"WarningKeysLockedString": "!LOCKED!",
|
||||
"NoPowerDeliveryMessage": ["USB-PD питание", "не обнаружено"],
|
||||
"LockingKeysString": "ЗАБЛОК",
|
||||
"UnlockingKeysString": "РАЗБЛОК",
|
||||
"WarningKeysLockedString": "!ЗАБЛОК!",
|
||||
"WarningThermalRunaway": ["Thermal", "Runaway"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "П",
|
||||
"SettingLeftChar": "Л",
|
||||
"SettingAutoChar": "А",
|
||||
"SettingOffChar": "O",
|
||||
"SettingOffChar": "О",
|
||||
"SettingSlowChar": "М",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingMediumChar": "С",
|
||||
"SettingFastChar": "Б",
|
||||
"SettingStartNoneChar": "В",
|
||||
"SettingStartSolderingChar": "П",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "В",
|
||||
"SettingLockDisableChar": "О",
|
||||
"SettingLockBoostChar": "Т",
|
||||
"SettingLockFullChar": "П",
|
||||
"SettingNAChar": "Н/Д"
|
||||
"SettingLockFullChar": "П"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -131,7 +121,7 @@
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Калибровка", "напряжения"],
|
||||
"desc": "Калибровка входного напряжения (длинное нажатие для выхода)"
|
||||
"desc": "Калибровка входного напряжения (долгое нажатие для выхода)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Подробный", "экран пайки"],
|
||||
@@ -142,12 +132,12 @@
|
||||
"desc": "Скорость прокрутки текста (М=медленно | Б=быстро)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Мощность", "питания"],
|
||||
"desc": "Мощность используемого источника питания"
|
||||
"text2": ["Ограничение", "напряжения QC"],
|
||||
"desc": "Максимальное напряжение для согласования с QC источником питания"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"text2": ["PD", "тайм-аут"],
|
||||
"desc": "Power Delivery тайм-аут согласования с шагом 100 мс для совместимости с некоторыми быстрыми зарядными QC (0: отключено)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Предел", "мощности"],
|
||||
@@ -170,8 +160,8 @@
|
||||
"desc": "Сила импульса удерживающего от сна повербанк или другой источник питания"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Эффект Холла", "чувствительность"],
|
||||
"desc": "Уровень чувствительности датчика холла в режиме сна (О=Отключено | Н=Низкий | С=Средний | В=Высокий)"
|
||||
"text2": ["Датчик", "Холла"],
|
||||
"desc": "Уровень чувствительности датчика холла в режиме сна (0=Выкл. | 1=Мин. | ... | 9=Макс.)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Разрешить", "блок. кнопок"],
|
||||
@@ -179,7 +169,7 @@
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Мин.", "напр."],
|
||||
"desc": "Минимальное разрешенное напряжение на ячейку (3S: 3 - 3,7V | 4-S: 2,4 - 3,7V)"
|
||||
"desc": "Минимальное разрешенное напряжение на ячейку (3S: 3 - 3,7V | 4S-6S: 2,4 - 3,7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Зацикленная", "анимация"],
|
||||
@@ -190,24 +180,28 @@
|
||||
"desc": "Скорость анимации иконок в главном меню (Милисекунды) (О=Отключено | Н=Низкий | С=Средний | В=Высокий)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2,5с)"
|
||||
"text2": ["Пауза имп.", "питания с"],
|
||||
"desc": "Пауза между импульсами удерживающими источник питания от сна (x 2,5с)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
"desc": "Keep-awake-pulse duration (x 250мс)"
|
||||
"text2": ["Длина имп.", "питания мс"],
|
||||
"desc": "Длина импульса удерживающего от сна источник питания (x 250мс)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Язык:", " RU Русский"],
|
||||
"desc": ""
|
||||
"desc": "Язык прошивки"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Яркость", "экрана"],
|
||||
"desc": "Настройки контраста/яркости OLED экрана"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
"text2": ["Инверсия", "экрана"],
|
||||
"desc": "Инвертировать цвета на OLED экране"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Длительность", "показа логотипа"],
|
||||
"desc": "Длительность отображения логотипа (в секундах)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,336 +1,207 @@
|
||||
{
|
||||
"languageCode": "SK",
|
||||
"languageLocalName": "Slovenčina",
|
||||
"fonts": [
|
||||
"ascii_basic",
|
||||
"latin_extended"
|
||||
],
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Najprv sa prosím uistite, že hrot má izbovú teplotu!",
|
||||
"SettingsResetWarning": "Naozaj chcete obnoviť továrenské nastavenia?",
|
||||
"UVLOWarningString": "Nízke U!",
|
||||
"UndervoltageString": "Nízke napätie",
|
||||
"InputVoltageString": "Vstupné U: ",
|
||||
"SleepingSimpleString": "Chrr",
|
||||
"SleepingAdvancedString": "Pokojový režim..",
|
||||
"SleepingTipAdvancedString": "Hrot:",
|
||||
"IdleTipString": "Hrot:",
|
||||
"IdleSetString": "Cieľ:",
|
||||
"TipDisconnectedString": "HROT ODPOJENÝ",
|
||||
"SolderingAdvancedPowerPrompt": "Výkon: ",
|
||||
"OffString": "Vyp"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": [
|
||||
"Nastavenia",
|
||||
"resetované"
|
||||
],
|
||||
"NoAccelerometerMessage": [
|
||||
"Bez pohybového",
|
||||
"senzora!"
|
||||
],
|
||||
"NoPowerDeliveryMessage": [
|
||||
"Chýba čip",
|
||||
"USB-PD!"
|
||||
],
|
||||
"LockingKeysString": "ZABLOK.",
|
||||
"UnlockingKeysString": "ODBLOK.",
|
||||
"WarningKeysLockedString": "!ZABLOK!",
|
||||
"WarningThermalRunaway": [
|
||||
"Únik",
|
||||
"Tepla"
|
||||
]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "P",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "Z",
|
||||
"SettingSlowChar": "P",
|
||||
"SettingMediumChar": "S",
|
||||
"SettingFastChar": "R",
|
||||
"SettingStartNoneChar": "V",
|
||||
"SettingStartSolderingChar": "Z",
|
||||
"SettingStartSleepChar": "S",
|
||||
"SettingStartSleepOffChar": "I",
|
||||
"SettingSensitivityOff": "Z",
|
||||
"SettingSensitivityLow": "N",
|
||||
"SettingSensitivityMedium": "S",
|
||||
"SettingSensitivityHigh": "V",
|
||||
"SettingLockDisableChar": "Z",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "P",
|
||||
"SettingNAChar": "N/A"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": [
|
||||
"Nastavenie",
|
||||
"výkonu"
|
||||
],
|
||||
"desc": "Nastavenie výkonu"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": [
|
||||
"Nastavenie",
|
||||
"spájkovania"
|
||||
],
|
||||
"desc": "Nastavenie spájkovania"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": [
|
||||
"Úsporný",
|
||||
"režim"
|
||||
],
|
||||
"desc": "Nastavenia režimov úspory energie"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": [
|
||||
"Nastavenie",
|
||||
"zobrazenia"
|
||||
],
|
||||
"desc": "Nastavenie zobrazenia"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": [
|
||||
"Pokročilé",
|
||||
"nastavenia"
|
||||
],
|
||||
"desc": "Pokročilé nastavenia"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": [
|
||||
"Zdroj",
|
||||
"napätia"
|
||||
],
|
||||
"desc": "Zdroj napätia. Nastavenie napätia pre vypnutie (cutoff) (DC=10V | nS=n*3.3V pre LiIon články)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": [
|
||||
"Pokojová",
|
||||
"teplota"
|
||||
],
|
||||
"desc": "Pokojová teplota (v nastavených jednotkách)"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": [
|
||||
"Pokojový",
|
||||
"režim po"
|
||||
],
|
||||
"desc": "Pokojový režim po (S=sekundách | M=minútach)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": [
|
||||
"Vypnutie",
|
||||
"po"
|
||||
],
|
||||
"desc": "Čas na vypnutie (minúty)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": [
|
||||
"Citlivosť",
|
||||
"pohybu"
|
||||
],
|
||||
"desc": "Citlivosť detekcie pohybu (0=Vyp | 1=Min | ... | 9=Max)"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": [
|
||||
"Jednotka",
|
||||
"teploty"
|
||||
],
|
||||
"desc": "Jednotky merania teploty (C=stupne Celzia | F=stupne Fahrenheita)"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": [
|
||||
"Detaily v",
|
||||
"pokoj. režime"
|
||||
],
|
||||
"desc": "Zobraziť detailné informácie v pokojovom režime (T=Zap | F=Vyp)"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": [
|
||||
"Orientácia",
|
||||
"displeja"
|
||||
],
|
||||
"desc": "Orientácia displeja (P=Pravák | L=Ľavák | A=Auto)"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": [
|
||||
"Boost",
|
||||
"teplota"
|
||||
],
|
||||
"desc": "Cieľová teplota pre prudký náhrev (v nastavených jednotkách)"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": [
|
||||
"Automatické",
|
||||
"spustenie"
|
||||
],
|
||||
"desc": "Pri štarte spustiť režim spájkovania (V=Vyp | Z=Spájkovanie | S=Spanok | I=Spanok izbová teplota)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": [
|
||||
"Blikanie pri",
|
||||
"chladnutí"
|
||||
],
|
||||
"desc": "Blikanie ukazovateľa teploty počas chladnutia hrotu"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": [
|
||||
"Kalibrácia",
|
||||
"teploty"
|
||||
],
|
||||
"desc": "Kalibrácia posunu teploty hrotu"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": [
|
||||
"Obnovenie",
|
||||
"nastavení"
|
||||
],
|
||||
"desc": "Obnovenie nastavení na pôvodné hodnoty"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": [
|
||||
"Kalibrácia",
|
||||
"nap. napätia"
|
||||
],
|
||||
"desc": "Kalibrácia napájacieho napätia. Krátke stlačenie mení nastavenie, dlhé stlačenie pre návrat"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": [
|
||||
"Detaily počas",
|
||||
"spájkovania"
|
||||
],
|
||||
"desc": "Zobrazenie detailov počas spájkovania"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": [
|
||||
"Rýchlosť",
|
||||
"skrolovania"
|
||||
],
|
||||
"desc": "Rýchlosť pohybu tohto textu"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": [
|
||||
"Obmedzenie QC",
|
||||
"napätia"
|
||||
],
|
||||
"desc": "Maximálne QC napätie ktoré si má systém vyžiadať"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": [
|
||||
"Čas vypršania",
|
||||
"Power Delivery"
|
||||
],
|
||||
"desc": "Čas vyjednávania Power Delivery v 100ms krokoch pre kompatibilitu s niektorými QC nabíjačkami (0: vypnuté)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": [
|
||||
"Obmedzenie",
|
||||
"výkonu"
|
||||
],
|
||||
"desc": "Obmedzenie výkonu podľa použitého zdroja (watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": [
|
||||
"Otočenie",
|
||||
"tlačidiel +/-"
|
||||
],
|
||||
"desc": "Prehodenie tlačidiel na nastavovanie teploty"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": [
|
||||
"Malý krok",
|
||||
"teploty"
|
||||
],
|
||||
"desc": "Zmena teploty pri krátkom stlačení tlačidla"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": [
|
||||
"Veľký krok",
|
||||
"teploty"
|
||||
],
|
||||
"desc": "Zmena teploty pri držaní tlačidla"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": [
|
||||
"Intenzita",
|
||||
"impulzu"
|
||||
],
|
||||
"desc": "Impulz udržujúci napájací zdroj zapnutý (power banky) (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": [
|
||||
"Citliv.",
|
||||
"Hall"
|
||||
],
|
||||
"desc": "Citlivosť Hallovho senzora pre detekciu spánku (Z=Zakázať | N=Nízka | S=Stredná | V=Vysoká)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": [
|
||||
"Povoliť zámok",
|
||||
"tlačidiel"
|
||||
],
|
||||
"desc": "Zamknutie tlačidiel - dlhé stlačenie oboch naraz počas spájkovania (Z=Zakázať | B=Okrem boost | P=Plné zamknutie)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": [
|
||||
"Minimálne",
|
||||
"napätie"
|
||||
],
|
||||
"desc": "Minimálne napätie povolené na jeden článok (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": [
|
||||
"Opakovanie",
|
||||
"animácií"
|
||||
],
|
||||
"desc": "Opakovanie animácií ikoniek v hlavnom menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": [
|
||||
"Rýchlosť",
|
||||
"animácií"
|
||||
],
|
||||
"desc": "Rýchlosť animácií ikoniek v menu (O=off | P=pomaly | S=stredne | R=rýchlo)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": [
|
||||
"Interval",
|
||||
"impulzu"
|
||||
],
|
||||
"desc": "Interval medzi impulzami udržujúcimi napájací zdroj zapnutý (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": [
|
||||
"Dĺžka impulzu",
|
||||
""
|
||||
],
|
||||
"desc": "Dĺžka impulzu udržujúci napájací zdroj zapnutý (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": [
|
||||
"Jazyk:",
|
||||
" SK Slovenčina"
|
||||
],
|
||||
"desc": "Aktuálny jazyk"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": [
|
||||
"Jas",
|
||||
"obrazovky"
|
||||
],
|
||||
"desc": "Mení jas/kontrast OLED displeja"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": [
|
||||
"Invertovať",
|
||||
"obrazovku"
|
||||
],
|
||||
"desc": "Invertovať farby OLED displeja"
|
||||
}
|
||||
}
|
||||
"languageCode": "SK",
|
||||
"languageLocalName": "Slovenčina",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Najprv sa prosím uistite, že hrot má izbovú teplotu!",
|
||||
"SettingsResetWarning": "Naozaj chcete obnoviť továrenské nastavenia?",
|
||||
"UVLOWarningString": "Nízke U!",
|
||||
"UndervoltageString": "Nízke napätie",
|
||||
"InputVoltageString": "Vstupné U: ",
|
||||
"SleepingSimpleString": "Chrr",
|
||||
"SleepingAdvancedString": "Pokojový režim..",
|
||||
"SleepingTipAdvancedString": "Hrot:",
|
||||
"OffString": "Vyp"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Nastavenia", "resetované"],
|
||||
"NoAccelerometerMessage": ["Bez pohybového", "senzora!"],
|
||||
"NoPowerDeliveryMessage": ["Chýba čip", "USB-PD!"],
|
||||
"LockingKeysString": "ZABLOK.",
|
||||
"UnlockingKeysString": "ODBLOK.",
|
||||
"WarningKeysLockedString": "!ZABLOK!",
|
||||
"WarningThermalRunaway": ["Únik", "Tepla"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "P",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "Z",
|
||||
"SettingSlowChar": "P",
|
||||
"SettingMediumChar": "S",
|
||||
"SettingFastChar": "R",
|
||||
"SettingStartNoneChar": "V",
|
||||
"SettingStartSolderingChar": "Z",
|
||||
"SettingStartSleepChar": "S",
|
||||
"SettingStartSleepOffChar": "I",
|
||||
"SettingSensitivityOff": "Z",
|
||||
"SettingSensitivityLow": "N",
|
||||
"SettingSensitivityMedium": "S",
|
||||
"SettingSensitivityHigh": "V",
|
||||
"SettingLockDisableChar": "Z",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "P"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Nastavenie", "výkonu"],
|
||||
"desc": "Nastavenie výkonu"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Nastavenie", "spájkovania"],
|
||||
"desc": "Nastavenie spájkovania"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Úsporný", "režim"],
|
||||
"desc": "Nastavenia režimov úspory energie"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Nastavenie", "zobrazenia"],
|
||||
"desc": "Nastavenie zobrazenia"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Pokročilé", "nastavenia"],
|
||||
"desc": "Pokročilé nastavenia"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Zdroj", "napätia"],
|
||||
"desc": "Zdroj napätia. Nastavenie napätia pre vypnutie (cutoff) (DC=10V | nS=n*3.3V pre LiIon články)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Pokojová", "teplota"],
|
||||
"desc": "Pokojová teplota (v nastavených jednotkách)"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Pokojový", "režim po"],
|
||||
"desc": "Pokojový režim po (s=sekundách | m=minútach)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Vypnutie", "po"],
|
||||
"desc": "Čas na vypnutie (minúty)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Citlivosť", "pohybu"],
|
||||
"desc": "Citlivosť detekcie pohybu (0=Vyp | 1=Min | ... | 9=Max)"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Jednotka", "teploty"],
|
||||
"desc": "Jednotky merania teploty (C=stupne Celzia | F=stupne Fahrenheita)"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Detaily v", "pokoj. režime"],
|
||||
"desc": "Zobraziť detailné informácie v pokojovom režime (T=Zap | F=Vyp)"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Orientácia", "displeja"],
|
||||
"desc": "Orientácia displeja (P=Pravák | L=Ľavák | A=Auto)"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Boost", "teplota"],
|
||||
"desc": "Cieľová teplota pre prudký náhrev (v nastavených jednotkách)"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Automatické", "spustenie"],
|
||||
"desc": "Pri štarte spustiť režim spájkovania (V=Vyp | Z=Spájkovanie | S=Spanok | I=Spanok izbová teplota)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Blikanie pri", "chladnutí"],
|
||||
"desc": "Blikanie ukazovateľa teploty počas chladnutia hrotu"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Kalibrácia", "teploty"],
|
||||
"desc": "Kalibrácia posunu teploty hrotu"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Obnovenie", "nastavení"],
|
||||
"desc": "Obnovenie nastavení na pôvodné hodnoty"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Kalibrácia", "nap. napätia"],
|
||||
"desc": "Kalibrácia napájacieho napätia. Krátke stlačenie mení nastavenie, dlhé stlačenie pre návrat"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Detaily počas", "spájkovania"],
|
||||
"desc": "Zobrazenie detailov počas spájkovania"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Rýchlosť", "skrolovania"],
|
||||
"desc": "Rýchlosť pohybu tohto textu"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["Obmedzenie QC", "napätia"],
|
||||
"desc": "Maximálne QC napätie ktoré si má systém vyžiadať"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["Čas vypršania", "Power Delivery"],
|
||||
"desc": "Čas vyjednávania Power Delivery v 100ms krokoch pre kompatibilitu s niektorými QC nabíjačkami (0: vypnuté)"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Obmedzenie", "výkonu"],
|
||||
"desc": "Obmedzenie výkonu podľa použitého zdroja (watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Otočenie", "tlačidiel +/-"],
|
||||
"desc": "Prehodenie tlačidiel na nastavovanie teploty"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Malý krok", "teploty"],
|
||||
"desc": "Zmena teploty pri krátkom stlačení tlačidla"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Veľký krok", "teploty"],
|
||||
"desc": "Zmena teploty pri držaní tlačidla"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Intenzita", "impulzu"],
|
||||
"desc": "Impulz udržujúci napájací zdroj zapnutý (power banky) (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Citliv.", "Hall"],
|
||||
"desc": "Citlivosť Hallovho senzora pre detekciu spánku (0=Vyp | 1=Min | ... | 9=Max)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Povoliť zámok", "tlačidiel"],
|
||||
"desc": "Zamknutie tlačidiel - dlhé stlačenie oboch naraz počas spájkovania (Z=Zakázať | B=Okrem boost | P=Plné zamknutie)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimálne", "napätie"],
|
||||
"desc": "Minimálne napätie povolené na jeden článok (3S: 3 - 3.7V | 4-6S: 2.4 - 3.7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Opakovanie", "animácií"],
|
||||
"desc": "Opakovanie animácií ikoniek v hlavnom menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Rýchlosť", "animácií"],
|
||||
"desc": "Rýchlosť animácií ikoniek v menu (O=off | P=pomaly | S=stredne | R=rýchlo)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Interval", "impulzu"],
|
||||
"desc": "Interval medzi impulzami udržujúcimi napájací zdroj zapnutý (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Dĺžka impulzu", ""],
|
||||
"desc": "Dĺžka impulzu udržujúci napájací zdroj zapnutý (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Jazyk:", " SK Slovenčina"],
|
||||
"desc": "Aktuálny jazyk"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Jas", "obrazovky"],
|
||||
"desc": "Mení jas/kontrast OLED displeja"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Invertovať", "obrazovku"],
|
||||
"desc": "Invertovať farby OLED displeja"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,26 +2,17 @@
|
||||
"languageCode": "SL",
|
||||
"languageLocalName": "Slovenščina",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibracija opravljena!",
|
||||
"SettingsCalibrationWarning": "Pred nadaljevanjem mora biti konica segreta na sobno temperaturo!",
|
||||
"SettingsResetWarning": "Res želite ponastaviti na privzete nastavitve?",
|
||||
"UVLOWarningString": "NIZKA U",
|
||||
"UndervoltageString": "Nizka napetost",
|
||||
"InputVoltageString": "Vhodna U: ",
|
||||
"WarningTipTempString": "Temp. kon.: ",
|
||||
"BadTipString": "KONICA?",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Spim...",
|
||||
"WarningSimpleString": "VROČ",
|
||||
"WarningAdvancedString": "!!VROČA KONICA!!",
|
||||
"SleepingTipAdvancedString": "Konica",
|
||||
"IdleTipString": "Kon:",
|
||||
"IdleSetString": " temp:",
|
||||
"TipDisconnectedString": "NI KONICE",
|
||||
"SolderingAdvancedPowerPrompt": "Moč: ",
|
||||
"OffString": "Off",
|
||||
"YourGainMessage": "Ojačenje"
|
||||
"OffString": "Off"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "V",
|
||||
"SettingLockDisableChar": "O",
|
||||
"SettingLockBoostChar": "L",
|
||||
"SettingLockFullChar": "P",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "P"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -87,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Čas do", "spanja"],
|
||||
"desc": "Čas pred spanjem (S=sekunde | M=minute)"
|
||||
"desc": "Čas pred spanjem (s=sekunde | m=minute)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Čas do", "izklopa"],
|
||||
"desc": "Čas do izklopa (M=minute)"
|
||||
"desc": "Čas do izklopa (m=minute)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Občutljivost", "premikanja"],
|
||||
@@ -171,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Občut.", "Hall son"],
|
||||
"desc": "Občutljivost Hallove sonde za zaznavanje spanja (U=ugasnjen | N=nizka | S=srednja | V=visoka)"
|
||||
"desc": "Občutljivost Hallove sonde za zaznavanje spanja (0=izklopljeno | 1=najmanjša | ... | 9=največja)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Omogoči", "zaklep gumbov"],
|
||||
@@ -183,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | P=slow | M=medium | H=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,30 +2,21 @@
|
||||
"languageCode": "SR_CYRL",
|
||||
"languageLocalName": "Српски",
|
||||
"fonts": ["ascii_basic", "cyrillic"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Калибрација готова",
|
||||
"SettingsCalibrationWarning": "Проверите да ли је врх охлађен на собну температуру пре него што наставите",
|
||||
"SettingsResetWarning": "Да ли заиста желите да вратите поставке на фабричке вредности?",
|
||||
"UVLOWarningString": "НИЗ.НАП.",
|
||||
"UndervoltageString": "ПРЕНИЗАК НАПОН",
|
||||
"InputVoltageString": "Ул. напон: ",
|
||||
"WarningTipTempString": "Темп. врха: ",
|
||||
"BadTipString": "ЛОШ ВРХ",
|
||||
"SleepingSimpleString": "Сан",
|
||||
"SleepingAdvancedString": "Спавање...",
|
||||
"WarningSimpleString": "ВРУЋ",
|
||||
"WarningAdvancedString": "! ОПРЕЗ, ВРУЋЕ !",
|
||||
"SleepingTipAdvancedString": "Врх:",
|
||||
"IdleTipString": "Врх:",
|
||||
"IdleSetString": " / ",
|
||||
"TipDisconnectedString": "ВРХ НИЈЕ СПОЈЕН",
|
||||
"SolderingAdvancedPowerPrompt": "Снага: ",
|
||||
"OffString": "Иск",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Иск"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": "LOCKED",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -87,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Време до", "спавања"],
|
||||
"desc": "Време мировања након кога лемилица спушта температуру. (M=минути | S=секунде)"
|
||||
"desc": "Време мировања након кога лемилица спушта температуру. (m=минути | s=секунде)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Време до", "гашења"],
|
||||
"desc": "Време мировања након кога се лемилица гаси. (M=минути)"
|
||||
"desc": "Време мировања након кога се лемилица гаси. (m=минути)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Осетљивост", "на покрет"],
|
||||
@@ -147,35 +137,35 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"desc": "Reverse the tip temperature change buttons plus minus assignment."
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"desc": "Temperature change steps on short button press!"
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Temperature-change-increment on short button press"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"desc": "Temperature change steps on long button press!"
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Temperature-change-increment on long button press"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"desc": "Keep awake pulse power intensity"
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Intensity of power of keep-awake-pulse (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=искључено | 1=најмање осетљиво | ... | 9=најосетљивије)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -183,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | С=slow | M=medium | Б=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5с)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5с)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,30 +2,21 @@
|
||||
"languageCode": "SR_LATN",
|
||||
"languageLocalName": "Srpski",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibracija gotova",
|
||||
"SettingsCalibrationWarning": "Proverite da li je vrh ohlađen na sobnu temperaturu pre nego što nastavite",
|
||||
"SettingsResetWarning": "Da li zaista želite da vratite postavke na fabričke vrednosti?",
|
||||
"UVLOWarningString": "NIZ.NAP.",
|
||||
"UndervoltageString": "PRENIZAK NAPON",
|
||||
"InputVoltageString": "Ul. napon: ",
|
||||
"WarningTipTempString": "Temp. vrha: ",
|
||||
"BadTipString": "LOŠ VRH",
|
||||
"SleepingSimpleString": "Zzz",
|
||||
"SleepingAdvancedString": "Spavanje...",
|
||||
"WarningSimpleString": "VRUĆ",
|
||||
"WarningAdvancedString": "! OPREZ, VRUĆE !",
|
||||
"SleepingTipAdvancedString": "Vrh:",
|
||||
"IdleTipString": "Vrh:",
|
||||
"IdleSetString": " / ",
|
||||
"TipDisconnectedString": "VRH NIJE SPOJEN",
|
||||
"SolderingAdvancedPowerPrompt": "Snaga: ",
|
||||
"OffString": "Isk",
|
||||
"YourGainMessage": "Your gain:"
|
||||
"OffString": "Isk"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Settings were", "reset!"],
|
||||
"SettingsResetMessage": ["Certain settings", "were changed!"],
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"LockingKeysString": "LOCKED",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -87,11 +77,11 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"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": {
|
||||
"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": {
|
||||
"text2": ["Osetljivost", "na pokret"],
|
||||
@@ -147,35 +137,35 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"desc": "Maximum power the iron can use (Watts)"
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Maximum power the iron can use (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"desc": "Reverse the tip temperature change buttons plus minus assignment."
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "Reverse assignment of buttons for temperature adjustment"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"desc": "Temperature change steps on short button press!"
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Temperature-change-increment on short button press"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"desc": "Temperature change steps on long button press!"
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Temperature-change-increment on long button press"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"desc": "Keep awake pulse power intensity"
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Intensity of power of keep-awake-pulse (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=isključeno | 1=najmanje osetljivo | ... | 9=najosetljivije)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (D=disable | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -183,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (O=off | S=slow | M=medium | B=fast)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
"languageCode": "SV",
|
||||
"languageLocalName": "Svenska",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Se till att spetsen är rumstemererad innan du fortsätter!",
|
||||
"SettingsResetWarning": "Är du säker på att du vill återställa inställningarna?",
|
||||
@@ -11,10 +12,6 @@
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Viloläge...",
|
||||
"SleepingTipAdvancedString": "Spets:",
|
||||
"IdleTipString": "Spts:",
|
||||
"IdleSetString": " Ang:",
|
||||
"TipDisconnectedString": "SPETS URTAGEN",
|
||||
"SolderingAdvancedPowerPrompt": "Ström: ",
|
||||
"OffString": "Av"
|
||||
},
|
||||
"messagesWarn": {
|
||||
@@ -45,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "A",
|
||||
"SettingLockBoostChar": "T",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -81,7 +77,7 @@
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Vilo-", "timeout"],
|
||||
"desc": "Vilo-timeout (M=Minuter | S=Sekunder)"
|
||||
"desc": "Vilo-timeout (m=Minuter | s=Sekunder)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Avstängn.", "timeout"],
|
||||
@@ -165,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Sensor-", "känslght"],
|
||||
"desc": "Känslighet för halleffekt-sensorn för viloläges-detektering (A=Av | L=Låg | M=Medium | H=Hög)"
|
||||
"desc": "Känslighet för halleffekt-sensorn för viloläges-detektering (0=Av | 1=minst känslig | ... | 9=mest känslig)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Tillåt lås", "via knappar"],
|
||||
@@ -184,8 +180,8 @@
|
||||
"desc": "Animationshastighet för ikoner i menyer (A=av | L=långsam | M=medel | S=snabb)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -196,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,26 +2,17 @@
|
||||
"languageCode": "TR",
|
||||
"languageLocalName": "Türkçe",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Kalibrasyon tamamlandı!",
|
||||
"SettingsCalibrationWarning": "Lütfen devam etmeden önce ucun oda sıcaklığında olduğunu garantiye alın!",
|
||||
"SettingsResetWarning": "Ayarları varsayılan değerlere sıfırlamak istediğinizden emin misiniz?",
|
||||
"UVLOWarningString": "Güç Az",
|
||||
"UndervoltageString": "Düşük Voltaj",
|
||||
"InputVoltageString": "Giriş V: ",
|
||||
"WarningTipTempString": "Uç Sıcaklığı: ",
|
||||
"BadTipString": "KÖTÜ UÇ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Bekleme Modu ...",
|
||||
"WarningSimpleString": "SICAK!",
|
||||
"WarningAdvancedString": "UYARI! UÇ SICAK!",
|
||||
"SleepingTipAdvancedString": "Uç:",
|
||||
"IdleTipString": "Uç:",
|
||||
"IdleSetString": " Ayarla:",
|
||||
"TipDisconnectedString": "UÇ ÇIKARILDI",
|
||||
"SolderingAdvancedPowerPrompt": "Güç: ",
|
||||
"OffString": "Kapalı",
|
||||
"YourGainMessage": "Kazancınız:"
|
||||
"OffString": "Kapalı"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": ["Sıfırlama Tamam", ""],
|
||||
@@ -36,23 +27,22 @@
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "S",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "F",
|
||||
"SettingAutoChar": "O",
|
||||
"SettingOffChar": "K",
|
||||
"SettingSlowChar": "Y",
|
||||
"SettingMediumChar": "O",
|
||||
"SettingFastChar": "H",
|
||||
"SettingStartNoneChar": "K",
|
||||
"SettingStartSolderingChar": "L",
|
||||
"SettingStartSleepChar": "U",
|
||||
"SettingStartSleepOffChar": "O",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingStartSleepOffChar": "S",
|
||||
"SettingSensitivityOff": "K",
|
||||
"SettingSensitivityLow": "L",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityMedium": "O",
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockDisableChar": "K",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F",
|
||||
"SettingNAChar": "N/A"
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -107,11 +97,7 @@
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["GRNYÖN", ""],
|
||||
"desc": "Görüntü Yönlendirme (R=Sağlak | L=Solak | A=Otomatik)"
|
||||
},
|
||||
"BoostEnabled": {
|
||||
"text2": ["YÜKPER", ""],
|
||||
"desc": "Lehimleme yaparken ön tuşa basmak anlık sıcaklık yükselişi sağlar. (450C)"
|
||||
"desc": "Görüntü Yönlendirme (R=Sağlak | L=Solak | O=Otomatik)"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["YKSC", ""],
|
||||
@@ -119,7 +105,7 @@
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["OTOBAŞ", ""],
|
||||
"desc": "Güç verildiğinde otomatik olarak lehimleme modunda başlat. (K=Kapalı | L=Lehimleme Modu | U=Uyku Modu | O=Uyku Modu Oda Sıcaklığı)"
|
||||
"desc": "Güç verildiğinde otomatik olarak lehimleme modunda başlat. (K=Kapalı | L=Lehimleme Modu | U=Uyku Modu | S=Uyku Modu Oda Sıcaklığı)"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["SĞGÖST", ""],
|
||||
@@ -143,51 +129,43 @@
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["YZKYHZ", ""],
|
||||
"desc": "Bu yazının kayma hızı (S=Yavaş | F=Hızlı)"
|
||||
"desc": "Bu yazının kayma hızı (Y=Yavaş | H=Hızlı)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["QC", "Voltage"],
|
||||
"desc": "Desired max QC Voltage negotiated for"
|
||||
"text2": ["QC", "voltage"],
|
||||
"desc": "Max QC voltage the iron should negotiate for"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "timeout"],
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers (0: disabled)"
|
||||
},
|
||||
"PowerInput": {
|
||||
"text2": ["Güç", "Miktarı(W)"],
|
||||
"desc": "Kullanılan adaptörün watt biriminden güç miktarı"
|
||||
},
|
||||
"PowerLimitEnable": {
|
||||
"text2": ["P Limit", "Enable"],
|
||||
"desc": "Güç sınırlamayı aç"
|
||||
"desc": "PD negotiation timeout in 100ms steps for compatibility with some QC chargers"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Power", "Limit"],
|
||||
"text2": ["Power", "limit"],
|
||||
"desc": "Havyanın kullanacağı en yüksek güç (Watts)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Key +-", "reverse?"],
|
||||
"text2": ["Swap", "+ - keys"],
|
||||
"desc": "\"Düğme Yerleri Rotasyonu\" Sıcaklık ayar düğmelerinin yerini değiştirin"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Temp change", "short?"],
|
||||
"text2": ["Temp change", "short"],
|
||||
"desc": "Kısa basışlardaki sıcaklık derecesi atlama oranı"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Temp change", "long?"],
|
||||
"text2": ["Temp change", "long"],
|
||||
"desc": "Uzun başışlardaki sıcaklık derecesi atlama oranı"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Power", "Pulse W"],
|
||||
"text2": ["Power", "pulse"],
|
||||
"desc": "Güç girişi voltajı ölçüm yoğunluğunu sık tut."
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall Eff", "Sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor in detecting sleep (O=Off | L=Low | M=Medium | H=High)"
|
||||
"text2": ["Hall sensor", "sensitivity"],
|
||||
"desc": "Sensitivity of the Hall effect sensor to detect sleep (0=Kapalı | 1=En az duyarlı | ... | 9=En duyarlı)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Allow buttons", "locking"],
|
||||
"desc": "When soldering, long press on both buttons lock them (D=Disable | B=Boost only | F=Full locking)"
|
||||
"text2": ["Allow locking", "buttons"],
|
||||
"desc": "While soldering, hold down both buttons to toggle locking them (K=Kapalı | B=boost mode only | F=full locking)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Minimum", "voltage"],
|
||||
@@ -195,15 +173,15 @@
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Anim.", "loop"],
|
||||
"desc": "Loop icon animations in root menu"
|
||||
"desc": "Loop icon animations in main menu"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Anim.", "speed"],
|
||||
"desc": "Speed of icon animations in menu (O=off | L=low | M=medium | H=high)"
|
||||
"desc": "Pace of icon animations in menu (K=Kapalı | Y=Yavaş | O=Orta | H=Hızlı)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Power pulse", "wait time"],
|
||||
"desc": "Time to wait before triggering every keep-awake pulse (x 2.5s)"
|
||||
"text2": ["Power pulse", "delay"],
|
||||
"desc": "Delay before keep-awake-pulse is triggered (x 2.5s)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Power pulse", "duration"],
|
||||
@@ -214,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Screen", "brightness"],
|
||||
"desc": "Adjust the brightness of the OLED screen"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"text2": ["Invert", "screen"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,26 +2,17 @@
|
||||
"languageCode": "UK",
|
||||
"languageLocalName": "Українська",
|
||||
"fonts": ["ascii_basic", "latin_extended", "cyrillic"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationDone": "Калібрування виконане!",
|
||||
"SettingsCalibrationWarning": "Переконайтеся, що жало охололо до кімнатної температури, перш ніж продовжувати!",
|
||||
"SettingsResetWarning": "Ви дійсно хочете скинути налаштування до значень за замовчуванням? (A=Так, В=Ні)",
|
||||
"UVLOWarningString": "АККУМ--",
|
||||
"UndervoltageString": "Низька напруга",
|
||||
"InputVoltageString": "Жив.(B): ",
|
||||
"WarningTipTempString": "Жало t°: ",
|
||||
"BadTipString": "ЖАЛО--",
|
||||
"SleepingSimpleString": "ZzZzz",
|
||||
"SleepingAdvancedString": "Очікування...",
|
||||
"WarningSimpleString": "ГАРЯЧЕ!",
|
||||
"WarningAdvancedString": "!!! ГАРЯЧЕ !!!\n!!! ЖАЛО !!!",
|
||||
"SleepingTipAdvancedString": "Жало:",
|
||||
"IdleTipString": "Жало:",
|
||||
"IdleSetString": " ->",
|
||||
"TipDisconnectedString": "Жало вимкнено!",
|
||||
"SolderingAdvancedPowerPrompt": "Живлення: ",
|
||||
"OffString": "Вимк",
|
||||
"YourGainMessage": "Приріст:"
|
||||
"OffString": "Вимк"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Скид. OK",
|
||||
@@ -38,9 +29,9 @@
|
||||
"SettingLeftChar": "Л",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "B",
|
||||
"SettingSlowChar": "П",
|
||||
"SettingSlowChar": "Н",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "Ш",
|
||||
"SettingFastChar": "М",
|
||||
"SettingStartNoneChar": "В",
|
||||
"SettingStartSolderingChar": "П",
|
||||
"SettingStartSleepChar": "О",
|
||||
@@ -51,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "М",
|
||||
"SettingLockDisableChar": "В",
|
||||
"SettingLockBoostChar": "Т",
|
||||
"SettingLockFullChar": "П",
|
||||
"SettingNAChar": "Н/Д"
|
||||
"SettingLockFullChar": "П"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -171,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Чутливість", "Ефекту Холла"],
|
||||
"desc": "Чутливість датчика ефекту Холла при виявленні сну (В=Вимк | Н=Низький | С=Середній | М=Макс)"
|
||||
"desc": "Чутливість датчика ефекту Холла при виявленні сну (0=Вимк. | 1=мін. чутливості | ... | 9=макс. чутливості)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Дозволити", "блок. кнопок"],
|
||||
@@ -202,12 +192,16 @@
|
||||
"desc": ""
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Screen", "Brightness"],
|
||||
"desc": "Adjust the contrast/brightness of the OLED screen"
|
||||
"text2": ["Яскравість", "екрану"],
|
||||
"desc": "Налаштування контрасту/яскравості OLED екрану"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Screen", "Invert"],
|
||||
"desc": "Invert the colours of the OLED screen"
|
||||
"text2": ["Інверт", "екрану"],
|
||||
"desc": "Налаштування контрасту/яскравості OLED екрану"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
207
Translations/translation_VI.json
Normal file
207
Translations/translation_VI.json
Normal file
@@ -0,0 +1,207 @@
|
||||
{
|
||||
"languageCode": "VI",
|
||||
"languageLocalName": "Tieng Viet",
|
||||
"fonts": ["ascii_basic", "latin_extended"],
|
||||
"tempUnitFahrenheit": false,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "Chac chan mui hàn o nhiet đo phòng truoc khi tiep tuc!",
|
||||
"SettingsResetWarning": "Ban chac chan muon khôi phuc tat ca cài đat ve mac đinh?",
|
||||
"UVLOWarningString": "DC thap",
|
||||
"UndervoltageString": "Đien áp thap",
|
||||
"InputVoltageString": "Đau vào V: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Đang ngu...",
|
||||
"SleepingTipAdvancedString": "Meo:",
|
||||
"OffString": "Tat"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "Reset OK",
|
||||
"SettingsResetMessage": ["Mot so cài đat", "đã thay đoi"],
|
||||
"NoAccelerometerMessage": ["Không phát hien", "gia toc ke!"],
|
||||
"NoPowerDeliveryMessage": ["Không phát hien", "USB-PD IC!"],
|
||||
"LockingKeysString": "Đã khóa",
|
||||
"UnlockingKeysString": "Mo khóa",
|
||||
"WarningKeysLockedString": "Đã khóa!",
|
||||
"WarningThermalRunaway": ["Nhiet", "Tat gia nhiet"]
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
"SettingLeftChar": "L",
|
||||
"SettingAutoChar": "A",
|
||||
"SettingOffChar": "O",
|
||||
"SettingSlowChar": "S",
|
||||
"SettingMediumChar": "M",
|
||||
"SettingFastChar": "F",
|
||||
"SettingStartNoneChar": "O",
|
||||
"SettingStartSolderingChar": "S",
|
||||
"SettingStartSleepChar": "Z",
|
||||
"SettingStartSleepOffChar": "R",
|
||||
"SettingSensitivityOff": "O",
|
||||
"SettingSensitivityLow": "L",
|
||||
"SettingSensitivityMedium": "M",
|
||||
"SettingSensitivityHigh": "H",
|
||||
"SettingLockDisableChar": "D",
|
||||
"SettingLockBoostChar": "B",
|
||||
"SettingLockFullChar": "F"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
"text2": ["Cài đat", "nguon đien"],
|
||||
"desc": "Cài đat nguon đien"
|
||||
},
|
||||
"SolderingMenu": {
|
||||
"text2": ["Cài đat", "tay hàn"],
|
||||
"desc": "Cài đat tay hàn"
|
||||
},
|
||||
"PowerSavingMenu": {
|
||||
"text2": ["Che đo", "ngu"],
|
||||
"desc": "Cài đat che đo tiet kiem đien"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": ["Giao dien", "nguoi dùng"],
|
||||
"desc": "Cài đat giao dien nguoi dùng"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": ["Cài đat", "nâng cao"],
|
||||
"desc": "Cài đat nâng cao"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": ["Nguon", "đien"],
|
||||
"desc": "Nguon đien, đat đien áp giam. (DC 10V) (S 3.3V moi cell, tat gioi han công suat)"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": ["Nhiet đo", "khi ngu"],
|
||||
"desc": "Giam nhiet đo khi o \"Che đo ngu\""
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": ["Ngu", "sau"],
|
||||
"desc": "- thoi gian truoc khi \"Che đo ngu\" bat đau (s=giây | m=phút)"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": ["Tat", "sau"],
|
||||
"desc": "- khoang thoi gian truoc khi tay hàn tat (m=phút)"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": ["Cam bien", "cu đong"],
|
||||
"desc": "- 0=tat | 1=đo nhay thap nhat| ... | 9=đo nhay cao nhat"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": ["Đon vi", "nhiet đo"],
|
||||
"desc": "C= Đo C | F= Đo F"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": ["Chi tiet", "màn hình cho"],
|
||||
"desc": "- hien thi thông tin chi tiet bang phông chu nho hon trên màn hình cho"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": ["Huong", "hien thi"],
|
||||
"desc": "- R=huong tay phai | L=huong tay trái | A=tu đong"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": ["Tăng", "nhiet đo"],
|
||||
"desc": "Nhiet đo dùng trong che đo \"tăng cuong\""
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": ["Nhiet đo", "đang tăng"],
|
||||
"desc": "- O=tat | S=nhiet đo hàn | Z=cho o nhiet đo ngu đen khi cu đong | R=cho mà không gia nhiet đen khi cu đong"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": ["Nguoi đi", "chop mat"],
|
||||
"desc": "-Nhap nháy nhiet đo sau khi viec gia nhiet tam dung trong khi mui hàn van nóng"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": ["Hieu chuan", "nhiet đo?"],
|
||||
"desc": "-Bat đau hieu chuan bù nhiet cho mui hàn"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": ["Khôi phuc", "cài đat goc?"],
|
||||
"desc": "-đat lai tat ca cài đat ve mac đinh"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": ["Hieu chinh", "đien áp đau vào?"],
|
||||
"desc": "-bat đau hieu chuan VIN (nhan và giu đe thoát)"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": ["Chi tiet", "màn hình hàn"],
|
||||
"desc": "-Hien thi thông tin bang phông chu nho hon trên màn hình hàn"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": ["Toc đo", "cuon"],
|
||||
"desc": "Toc đo cuon văn ban(S=cham | F=nhanh)"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": ["QC", "Voltage"],
|
||||
"desc": "Đien áp QC toi đa mà tay hàn yêu cau"
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": ["PD", "sau"],
|
||||
"desc": "Thoi gian cho đàm phán PD trong các buoc 100ms đe tuong thích voi mot so bo sac QC"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": ["Công suat", "gioi han"],
|
||||
"desc": "-Công suat toi đa mà tay hàn có the su dung (W=watt)"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": ["Đao nguoc", "nút + -"],
|
||||
"desc": "Đao nguoc chuc năng các nút đieu chinh nhiet đo"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": ["Thay đoi n.đo", "an nút nhanh"],
|
||||
"desc": "Biên đo tăng/giam nhiet đo khi an nút nhanh"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": ["Thay đoi n.đo", "an nút lâu"],
|
||||
"desc": "Biên đo tăng/giam nhiet đo khi an nút lâu"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": ["Công suat", "kích nguon"],
|
||||
"desc": "-Cuong đo công suat kích nguon (watt)"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": ["Hall", "đo nhay"],
|
||||
"desc": "Đo nhay cam bien Hall đe phát hien che đo ngu (0=tat | 1=ít nhay nhat |...| 9=nhay nhat)"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": ["Cho phép khóa", "các nút"],
|
||||
"desc": "Trong khi hàn, giu ca 2 nút đe khóa(D=tat | B=chi che đo tăng cuong | F=khóa hoàn toàn)"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": ["Voltage", "toi thieu"],
|
||||
"desc": "Đien áp toi thieu cho phép trên moi cell (3S: 3 - 3,7V | 4-6S: 2,4 - 3,7V)"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": ["Hoat anh", "lap lai"],
|
||||
"desc": "Lap lai các hoat anh trong màn hình chính"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": ["Toc đo", "hoat anh"],
|
||||
"desc": "-Toc đo cua hoat anh menu (O=tat | S=cham | M=trung bình | F=nhanh)"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": ["Trì hoãn", "đien áp kích"],
|
||||
"desc": "Trì hoãn truoc khi kích hoat kích nguon(x 2,5 giây)"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": ["Thoi luong", "kích nguon"],
|
||||
"desc": "-thoi luong kích nguon (x 250ms)"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": ["Ngôn ngu:", "VI Tieng Viet"],
|
||||
"desc": "-Ngôn ngu firmware hien tai"
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": ["Đo tuong phan", "màn hình"],
|
||||
"desc": "-Đieu chinh đo sáng màn hình OLED"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": ["Đao nguoc màu", "màn hình"],
|
||||
"desc": "-Đao nguoc màu màn hình OLED"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@
|
||||
"fonts": ["ascii_basic", "cjk"],
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "開始温度校正之前,請先確定辣雞咀係處於室温!",
|
||||
"SettingsCalibrationWarning": "開始温度校正之前,請先確定焫雞咀係處於室温!",
|
||||
"SettingsResetWarning": "你係咪確定要將全部設定重設到預設值?",
|
||||
"UVLOWarningString": "電壓過低",
|
||||
"UndervoltageString": "Undervoltage",
|
||||
@@ -12,17 +12,13 @@
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Sleeping...",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"IdleTipString": "Tip:",
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "NO TIP",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "關"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "已重設!",
|
||||
"SettingsResetMessage": "設定已被重設!",
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"NoAccelerometerMessage": "未能偵測加速度計",
|
||||
"NoPowerDeliveryMessage": "未能偵測PD晶片",
|
||||
"LockingKeysString": "已鎖定",
|
||||
"UnlockingKeysString": "已解除鎖定",
|
||||
"WarningKeysLockedString": "!撳掣鎖定!",
|
||||
@@ -46,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "高",
|
||||
"SettingLockDisableChar": "無",
|
||||
"SettingLockBoostChar": "增",
|
||||
"SettingLockFullChar": "全",
|
||||
"SettingNAChar": "不適用"
|
||||
"SettingLockFullChar": "全"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -78,15 +73,15 @@
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": "待機温度",
|
||||
"desc": "喺待機模式時嘅辣雞咀温度"
|
||||
"desc": "喺待機模式時嘅焫雞咀温度"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": "待機延時",
|
||||
"desc": "自動進入待機模式前嘅閒置等候時間 <S=秒 | M=分鐘>"
|
||||
"desc": "自動進入待機模式前嘅閒置等候時間 <s=秒 | m=分鐘>"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": "自動熄機",
|
||||
"desc": "自動熄機前嘅閒置等候時間 <M=分鐘>"
|
||||
"desc": "自動熄機前嘅閒置等候時間 <m=分鐘>"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": "動作敏感度",
|
||||
@@ -114,11 +109,11 @@
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": "降温時閃爍",
|
||||
"desc": "停止加熱之後,當辣雞咀仲係熱嗰陣閃爍畫面"
|
||||
"desc": "停止加熱之後,當焫雞咀仲係熱嗰陣閃爍畫面"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": "温度校正?",
|
||||
"desc": "開始校正辣雞咀温度位移"
|
||||
"desc": "開始校正焫雞咀温度位移"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": "全部重設?",
|
||||
@@ -146,7 +141,7 @@
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": "功率限制",
|
||||
"desc": "限制辣雞可用嘅最大功率 <W=watt(火)>"
|
||||
"desc": "限制焫雞可用嘅最大功率 <W=watt(火)>"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": "反轉加減掣",
|
||||
@@ -166,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": "磁場敏感度",
|
||||
"desc": "磁場感應器用嚟啓動待機模式嘅敏感度 <關=停用 | 低=最低敏感度 | 中=中等敏感度 | 高=最高敏感度>"
|
||||
"desc": "磁場感應器用嚟啓動待機模式嘅敏感度 <0=停用 | 1=最低敏感度 | ... | 9=最高敏感度>"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": "撳掣鎖定",
|
||||
@@ -203,6 +198,10 @@
|
||||
"ColourInversion": {
|
||||
"text2": "熒幕反轉色",
|
||||
"desc": "反轉OLED熒幕嘅黑白色"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,27 +4,23 @@
|
||||
"fonts": ["ascii_basic", "cjk"],
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "开始温度校正前,请先确定铬铁头正处于室温!",
|
||||
"SettingsResetWarning": "你是否确定要将全部设置重置为默认值?",
|
||||
"SettingsCalibrationWarning": "开始温度校正前,请先确定烙铁头正处于室温!",
|
||||
"SettingsResetWarning": "你是否确定要将全部设定重置为默认值?",
|
||||
"UVLOWarningString": "电压过低",
|
||||
"UndervoltageString": "Undervoltage",
|
||||
"InputVoltageString": "Input V: ",
|
||||
"InputVoltageString": "VIN: ",
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Sleeping...",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"IdleTipString": "Tip:",
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "NO TIP",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"SleepingAdvancedString": "Zzzz...",
|
||||
"SleepingTipAdvancedString": "--->",
|
||||
"OffString": "关"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "已重置!",
|
||||
"SettingsResetMessage": "设置已被重置!",
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"SettingsResetMessage": "设定已被重置!",
|
||||
"NoAccelerometerMessage": "未检测到加速度计",
|
||||
"NoPowerDeliveryMessage": "未检测到PD电路",
|
||||
"LockingKeysString": "已锁定",
|
||||
"UnlockingKeysString": "已解除锁定",
|
||||
"UnlockingKeysString": "已解锁",
|
||||
"WarningKeysLockedString": "!按键锁定!",
|
||||
"WarningThermalRunaway": "加热失控"
|
||||
},
|
||||
@@ -46,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "高",
|
||||
"SettingLockDisableChar": "无",
|
||||
"SettingLockBoostChar": "增",
|
||||
"SettingLockFullChar": "全",
|
||||
"SettingNAChar": "不适用"
|
||||
"SettingLockFullChar": "全"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -63,78 +58,78 @@
|
||||
"desc": "自动待机省电设置"
|
||||
},
|
||||
"UIMenu": {
|
||||
"text2": "使用者介面",
|
||||
"desc": "使用者介面设置"
|
||||
"text2": "用户界面",
|
||||
"desc": "用户界面设置"
|
||||
},
|
||||
"AdvancedMenu": {
|
||||
"text2": "进阶设置",
|
||||
"desc": "进阶设置"
|
||||
"text2": "高级设置",
|
||||
"desc": "高级设置"
|
||||
}
|
||||
},
|
||||
"menuOptions": {
|
||||
"DCInCutoff": {
|
||||
"text2": "电源",
|
||||
"desc": "输入电源;设置自动停机电压 <DC 10V> <S 锂电池,以每颗3.3V计算;此设置会禁用功率限制>"
|
||||
"text2": "下限电压",
|
||||
"desc": "设置自动停机电压 <DC=10V | S=(串)每节锂电池3.3V;此设置会禁用功率限制>"
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": "待机温度",
|
||||
"desc": "于待机模式时的铬铁头温度"
|
||||
"desc": "待机模式时的烙铁头温度"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": "待机延时",
|
||||
"desc": "自动进入待机模式前的闲置等候时间 <S=秒 | M=分钟>"
|
||||
"text2": "待机超时",
|
||||
"desc": "自动进入待机模式前的等候时间 <s=秒 | m=分钟>"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": "自动关机",
|
||||
"desc": "自动关机前的闲置等候时间 <M=分钟>"
|
||||
"desc": "自动关机前的等候时间 <m=分钟>"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": "动作灵敏度",
|
||||
"desc": "0=禁用 | 1=最低灵敏度 | ... | 9=最高灵敏度"
|
||||
},
|
||||
"TemperatureUnit": {
|
||||
"text2": "温标",
|
||||
"text2": "温度单位",
|
||||
"desc": "C=摄氏 | F=华氏"
|
||||
},
|
||||
"AdvancedIdle": {
|
||||
"text2": "详细闲置画面",
|
||||
"desc": "于闲置画面以英语小字显示详细信息"
|
||||
"text2": "闲置画面详情",
|
||||
"desc": "闲置画面以英语小字体显示详情"
|
||||
},
|
||||
"DisplayRotation": {
|
||||
"text2": "画面方向",
|
||||
"desc": "右=使用右手 | 左=使用左手 | 自=自动"
|
||||
"text2": "显示方向",
|
||||
"desc": "右=右手 | 左=左手 | 自=自动"
|
||||
},
|
||||
"BoostTemperature": {
|
||||
"text2": "增热温度",
|
||||
"desc": "于增热模式时使用的温度"
|
||||
"desc": "增热模式时使用的温度"
|
||||
},
|
||||
"AutoStart": {
|
||||
"text2": "自动启用",
|
||||
"desc": "开机时自动启用 <无=禁用 | 焊=焊接模式 | 待=待机模式 | 室=室温待机>"
|
||||
"text2": "自动启动",
|
||||
"desc": "开机时自动启动 <无=禁用 | 焊=焊接模式 | 待=待机模式 | 室=室温待机>"
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": "降温时闪烁",
|
||||
"desc": "停止加热之后,当铬铁头仍处于高温时闪烁画面"
|
||||
"text2": "降温时闪显",
|
||||
"desc": "停止加热之后,闪动温度显示提醒烙铁头仍处于高温状态"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": "温度校正?",
|
||||
"desc": "开始校正铬铁头温度位移"
|
||||
"desc": "开始校正烙铁头温度偏移"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": "全部重置?",
|
||||
"desc": "将所有设置重置为默认值"
|
||||
"desc": "将所有设定重置为默认值"
|
||||
},
|
||||
"VoltageCalibration": {
|
||||
"text2": "输入电压校正?",
|
||||
"desc": "开始校正VIN输入电压 <长按以退出>"
|
||||
"desc": "开始校正输入电压(VIN)<长按以退出>"
|
||||
},
|
||||
"AdvancedSoldering": {
|
||||
"text2": "详细焊接画面",
|
||||
"desc": "于焊接模式画面以英语小字显示详细信息"
|
||||
"text2": "焊接画面详情",
|
||||
"desc": "焊接模式画面以英语小字体显示详请"
|
||||
},
|
||||
"ScrollingSpeed": {
|
||||
"text2": "卷动速度",
|
||||
"desc": "解说文字的卷动速度"
|
||||
"text2": "滚动速度",
|
||||
"desc": "解说文字的滚动速度"
|
||||
},
|
||||
"QCMaxVoltage": {
|
||||
"text2": "QC电压",
|
||||
@@ -142,55 +137,55 @@
|
||||
},
|
||||
"PDNegTimeout": {
|
||||
"text2": "PD超时",
|
||||
"desc": "设定USB PD协议交涉的超时时限;为兼容某些QC电源而设 <x100ms(亳秒)>"
|
||||
"desc": "设定USB-PD协议交涉的超时时限;为兼容某些QC电源而设 <x100ms(亳秒)>"
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": "功率限制",
|
||||
"desc": "限制铬铁可用的最大功率 <W=watt(瓦特)>"
|
||||
"desc": "限制烙铁可用的最大功率 <W=瓦特>"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": "调换加减键",
|
||||
"desc": "调校温度时调换加减键的方向"
|
||||
"desc": "调校温度时更换加减键的方向"
|
||||
},
|
||||
"TempChangeShortStep": {
|
||||
"text2": "温度调整 短",
|
||||
"desc": "调校温度时短按一下的温度变幅"
|
||||
"text2": "短按温度调整",
|
||||
"desc": "调校温度时短按按键的温度变幅"
|
||||
},
|
||||
"TempChangeLongStep": {
|
||||
"text2": "温度调整 长",
|
||||
"text2": "长按温度调整",
|
||||
"desc": "调校温度时长按按键的温度变幅"
|
||||
},
|
||||
"PowerPulsePower": {
|
||||
"text2": "电源脉冲",
|
||||
"desc": "为保持电源唤醒而通电所用的功率 <watt(瓦特)>"
|
||||
"desc": "为保持电源处于唤醒状态所用的功率 <Watt(瓦特)>"
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": "磁场灵敏度",
|
||||
"desc": "磁场感应器用作启动待机模式的灵敏度 <关=禁用 | 低=最低灵敏度 | 中=中等灵敏度 | 高=最高灵敏度>"
|
||||
"desc": "霍尔效应传感器用作启动待机模式的灵敏度 <0=禁用 | 1=最低灵敏度 | ... | 9=最高灵敏度>"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": "按键锁定",
|
||||
"desc": "于焊接模式时,同时长按两个按键启用按键锁定 <无=禁用 | 增=只容许增热模式 | 全=锁定全部>"
|
||||
"desc": "焊接模式时,同时长按两个按键启用按键锁定 <无=禁用 | 增=只容许增热模式 | 全=完全锁定>"
|
||||
},
|
||||
"MinVolCell": {
|
||||
"text2": "最低电压",
|
||||
"desc": "每颗电池的最低可用电压 <伏特> <3S: 3.0V - 3.7V, 4/5/6S: 2.4V - 3.7V>"
|
||||
"desc": "每节电池的最低允许电压 <V(伏特)> <3S: 3.0V - 3.7V, 4/5/6S: 2.4V - 3.7V>"
|
||||
},
|
||||
"AnimLoop": {
|
||||
"text2": "动画循环",
|
||||
"desc": "循环显示功能表图示动画"
|
||||
"desc": "主菜单中循环播放功能图标动画"
|
||||
},
|
||||
"AnimSpeed": {
|
||||
"text2": "动画速度",
|
||||
"desc": "功能表图示动画的速度 <关=不显示动画 | 慢=慢速 | 中=中速 | 快=快速>"
|
||||
"desc": "主菜单中功能图标动画的播放速度 <关=不显示动画 | 慢=慢速 | 中=中速 | 快=快速>"
|
||||
},
|
||||
"PowerPulseWait": {
|
||||
"text2": "电源脉冲间隔",
|
||||
"desc": "为保持电源唤醒,每次通电之间的间隔时间 <x2.5s(秒)>"
|
||||
"desc": "为保持电源处于唤醒状态,每次通电之间的间隔时间 <x2.5s(秒)>"
|
||||
},
|
||||
"PowerPulseDuration": {
|
||||
"text2": "电源脉冲时长",
|
||||
"desc": "为保持电源唤醒,每次通电脉冲的时间长度 <x250ms(亳秒)>"
|
||||
"desc": "为保持电源处于唤醒状态,每次通电脉冲的时间长度 <x250ms(亳秒)>"
|
||||
},
|
||||
"LanguageSwitch": {
|
||||
"text2": "语言:简体中文",
|
||||
@@ -198,11 +193,15 @@
|
||||
},
|
||||
"Brightness": {
|
||||
"text2": "屏幕亮度",
|
||||
"desc": "设定OLED屏幕的亮度"
|
||||
"desc": "调整OLED屏幕的亮度"
|
||||
},
|
||||
"ColourInversion": {
|
||||
"text2": "螢幕反轉色",
|
||||
"desc": "反转OLED屏幕的黑白色彩"
|
||||
"text2": "反转屏幕颜色",
|
||||
"desc": "反转OLED黑/白屏幕"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"fonts": ["ascii_basic", "cjk"],
|
||||
"tempUnitFahrenheit": true,
|
||||
"messages": {
|
||||
"SettingsCalibrationWarning": "開始溫度校正前,請先確定鉻鐵頭正處於室溫!",
|
||||
"SettingsCalibrationWarning": "開始溫度校正前,請先確定烙鐵頭正處於室溫!",
|
||||
"SettingsResetWarning": "你是否確定要將全部設定重設到預設值?",
|
||||
"UVLOWarningString": "電壓過低",
|
||||
"UndervoltageString": "Undervoltage",
|
||||
@@ -12,17 +12,13 @@
|
||||
"SleepingSimpleString": "Zzzz",
|
||||
"SleepingAdvancedString": "Sleeping...",
|
||||
"SleepingTipAdvancedString": "Tip:",
|
||||
"IdleTipString": "Tip:",
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "NO TIP",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "關"
|
||||
},
|
||||
"messagesWarn": {
|
||||
"ResetOKMessage": "已重設!",
|
||||
"SettingsResetMessage": "設定已被重設!",
|
||||
"NoAccelerometerMessage": ["No accelerometer", "detected!"],
|
||||
"NoPowerDeliveryMessage": ["No USB-PD IC", "detected!"],
|
||||
"NoAccelerometerMessage": "未能偵測加速度計",
|
||||
"NoPowerDeliveryMessage": "未能偵測PD晶片",
|
||||
"LockingKeysString": "已鎖定",
|
||||
"UnlockingKeysString": "已解除鎖定",
|
||||
"WarningKeysLockedString": "!按鍵鎖定!",
|
||||
@@ -46,8 +42,7 @@
|
||||
"SettingSensitivityHigh": "高",
|
||||
"SettingLockDisableChar": "無",
|
||||
"SettingLockBoostChar": "增",
|
||||
"SettingLockFullChar": "全",
|
||||
"SettingNAChar": "不適用"
|
||||
"SettingLockFullChar": "全"
|
||||
},
|
||||
"menuGroups": {
|
||||
"PowerMenu": {
|
||||
@@ -78,15 +73,15 @@
|
||||
},
|
||||
"SleepTemperature": {
|
||||
"text2": "待機溫度",
|
||||
"desc": "於待機模式時的鉻鐵頭溫度"
|
||||
"desc": "於待機模式時的烙鐵頭溫度"
|
||||
},
|
||||
"SleepTimeout": {
|
||||
"text2": "待機延時",
|
||||
"desc": "自動進入待機模式前的閒置等候時間 <S=秒 | M=分鐘>"
|
||||
"desc": "自動進入待機模式前的閒置等候時間 <s=秒 | m=分鐘>"
|
||||
},
|
||||
"ShutdownTimeout": {
|
||||
"text2": "自動關機",
|
||||
"desc": "自動關機前的閒置等候時間 <M=分鐘>"
|
||||
"desc": "自動關機前的閒置等候時間 <m=分鐘>"
|
||||
},
|
||||
"MotionSensitivity": {
|
||||
"text2": "動作敏感度",
|
||||
@@ -114,11 +109,11 @@
|
||||
},
|
||||
"CooldownBlink": {
|
||||
"text2": "降溫時閃爍",
|
||||
"desc": "停止加熱之後,當鉻鐵頭仍處於高溫時閃爍畫面"
|
||||
"desc": "停止加熱之後,當烙鐵頭仍處於高溫時閃爍畫面"
|
||||
},
|
||||
"TemperatureCalibration": {
|
||||
"text2": "溫度校正?",
|
||||
"desc": "開始校正鉻鐵頭溫度位移"
|
||||
"desc": "開始校正烙鐵頭溫度位移"
|
||||
},
|
||||
"SettingsReset": {
|
||||
"text2": "全部重設?",
|
||||
@@ -146,7 +141,7 @@
|
||||
},
|
||||
"PowerLimit": {
|
||||
"text2": "功率限制",
|
||||
"desc": "限制鉻鐵可用的最大功率 <W=watt(瓦特)>"
|
||||
"desc": "限制烙鐵可用的最大功率 <W=watt(瓦特)>"
|
||||
},
|
||||
"ReverseButtonTempChange": {
|
||||
"text2": "調換加減鍵",
|
||||
@@ -166,7 +161,7 @@
|
||||
},
|
||||
"HallEffSensitivity": {
|
||||
"text2": "磁場敏感度",
|
||||
"desc": "磁場感應器用作啟動待機模式的敏感度 <關=停用 | 低=最低敏感度 | 中=中等敏感度 | 高=最高敏感度>"
|
||||
"desc": "磁場感應器用作啟動待機模式的敏感度 <0=停用 | 1=最低敏感度 | ... | 9=最高敏感度>"
|
||||
},
|
||||
"LockingMode": {
|
||||
"text2": "按鍵鎖定",
|
||||
@@ -203,6 +198,10 @@
|
||||
"ColourInversion": {
|
||||
"text2": "螢幕反轉色",
|
||||
"desc": "反轉OLED螢幕的黑白色彩"
|
||||
},
|
||||
"LOGOTime": {
|
||||
"text2": ["Boot logo", "duration"],
|
||||
"desc": "Sets the duration for the boot logo (s=seconds)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,367 +2,432 @@ var def =
|
||||
{
|
||||
"messages": [
|
||||
{
|
||||
"id": "SettingsCalibrationWarning"
|
||||
"id": "SettingsCalibrationWarning",
|
||||
"description": "Confirmation message shown before performing an offset calibration. Should warn the user to make sure tip and handle are at the same temperature."
|
||||
},
|
||||
{
|
||||
"id": "SettingsResetWarning"
|
||||
"id": "SettingsResetWarning",
|
||||
"description": "Confirmation message shown before confirming a settings reset."
|
||||
},
|
||||
{
|
||||
"id": "UVLOWarningString",
|
||||
"maxLen": 8
|
||||
"maxLen": 8,
|
||||
"description": "Warning text shown when the unit turns off due to undervoltage in simple mode."
|
||||
},
|
||||
{
|
||||
"id": "UndervoltageString",
|
||||
"maxLen": 16
|
||||
"maxLen": 15,
|
||||
"description": "Warning text shown when the unit turns off due to undervoltage in advanced mode."
|
||||
},
|
||||
{
|
||||
"id": "InputVoltageString",
|
||||
"maxLen": 11,
|
||||
"note": "Preferably end with a space"
|
||||
"note": "Preferably end with a space",
|
||||
"description": "Prefix text for 'Input Voltage' shown before showing the input voltage reading."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "SleepingSimpleString",
|
||||
"maxLen": 4
|
||||
"maxLen": 4,
|
||||
"description": "The text shown to indicate the unit is in sleep mode when the advanced view is NOT on."
|
||||
},
|
||||
{
|
||||
"id": "SleepingAdvancedString",
|
||||
"maxLen": 16
|
||||
"maxLen": 15,
|
||||
"description": "The text shown to indicate the unit is in sleep mode when the advanced view is turned on."
|
||||
},
|
||||
{
|
||||
"id": "SleepingTipAdvancedString",
|
||||
"maxLen": 6
|
||||
},
|
||||
{
|
||||
"id": "IdleTipString",
|
||||
"lenSum":
|
||||
{
|
||||
"fields": ["IdleTipString", "IdleSetString"],
|
||||
"maxLen": 10
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "IdleSetString",
|
||||
"lenSum":
|
||||
{
|
||||
"fields": ["IdleTipString", "IdleSetString"],
|
||||
"maxLen": 10
|
||||
},
|
||||
"note": "Preferably start with a space"
|
||||
},
|
||||
{
|
||||
"id": "TipDisconnectedString",
|
||||
"maxLen": 16
|
||||
},
|
||||
{
|
||||
"id": "SolderingAdvancedPowerPrompt",
|
||||
"maxLen": null
|
||||
"maxLen": 6,
|
||||
"description": "The prefix text shown before tip temperature when the unit is sleeping with advanced view on."
|
||||
},
|
||||
{
|
||||
"id": "OffString",
|
||||
"maxLen": 3
|
||||
"maxLen": 3,
|
||||
"description": "Shown when a setting is turned off."
|
||||
}
|
||||
],
|
||||
"messagesWarn": [
|
||||
{
|
||||
"id": "ResetOKMessage"
|
||||
"id": "SettingsResetMessage",
|
||||
"description": "Shown when the settings are reset to factory defaults either by the user or by incompatible firmware changes."
|
||||
},
|
||||
{
|
||||
"id": "SettingsResetMessage"
|
||||
"id": "NoAccelerometerMessage",
|
||||
"description": "No accelerometer could be communicated with. This means that either the device's accelerometer is broken or unknown to IronOS. All motion-based settings are disabled and motion-based features will not work."
|
||||
},
|
||||
{
|
||||
"id": "NoAccelerometerMessage"
|
||||
"id": "NoPowerDeliveryMessage",
|
||||
"description": "The IC required for USB-PD could not be communicated with. This is an error warning that USB-PD WILL NOT FUNCTION. Generally indicative of either a hardware or software issues."
|
||||
},
|
||||
{
|
||||
"id": "NoPowerDeliveryMessage"
|
||||
"id": "LockingKeysString",
|
||||
"description": "Shown when keys are locked"
|
||||
},
|
||||
{
|
||||
"id": "LockingKeysString"
|
||||
"id": "UnlockingKeysString",
|
||||
"description": "Shown when keys are unlocked"
|
||||
},
|
||||
{
|
||||
"id": "UnlockingKeysString"
|
||||
"id": "WarningKeysLockedString",
|
||||
"description": "Warning that is shown when input is ignored due to the key lock being on"
|
||||
},
|
||||
{
|
||||
"id": "WarningKeysLockedString"
|
||||
},
|
||||
{
|
||||
"id": "WarningThermalRunaway"
|
||||
"id": "WarningThermalRunaway",
|
||||
"description": "Warning text shown when the software has disabled the heater as a safety precaution as the temperature reading didn't react as expected."
|
||||
}
|
||||
],
|
||||
"characters": [
|
||||
{
|
||||
"id": "SettingRightChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown for fixed Right-handed display rotation."
|
||||
},
|
||||
{
|
||||
"id": "SettingLeftChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown for fixed Left-handed display rotation."
|
||||
},
|
||||
{
|
||||
"id": "SettingAutoChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown for automatic display rotation."
|
||||
},
|
||||
{
|
||||
"id": "SettingFastChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a setting is set to a fast value i.e. animation speed"
|
||||
},
|
||||
{
|
||||
"id": "SettingSlowChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a setting is set to a slow value i.e. animation speed"
|
||||
},
|
||||
{
|
||||
"id": "SettingMediumChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a setting is set to a medium value i.e. animation speed"
|
||||
},
|
||||
{
|
||||
"id": "SettingOffChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a setting is turned off"
|
||||
},
|
||||
{
|
||||
"id": "SettingStartSolderingChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when the auto start mode is set to go straight to soldering."
|
||||
},
|
||||
{
|
||||
"id": "SettingStartSleepChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when the auto start mode is set to start in sleep mode."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "SettingStartSleepOffChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when the auto start state is set to go to an off state, but on movement wake into soldering mode."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "SettingStartNoneChar",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when autostart state is to do nothing and go to a normal boot"
|
||||
},
|
||||
{
|
||||
"id": "SettingSensitivityOff",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a sensitivity (hall effect sensor) is disabled. Turning off the sensor."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "SettingSensitivityLow",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a sensitivity (hall effect) is not very sensitive"
|
||||
},
|
||||
{
|
||||
"id": "SettingSensitivityMedium",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a sensitivity (hall effect) is average sensitive"
|
||||
},
|
||||
{
|
||||
"id": "SettingSensitivityHigh",
|
||||
"len": 1
|
||||
"len": 1,
|
||||
"description": "Shown when a sensitivity (hall effect) is highly sensitive"
|
||||
},
|
||||
{
|
||||
"id": "SettingLockDisableChar",
|
||||
"len": 1,
|
||||
"default": "D"
|
||||
"default": "D",
|
||||
"description": "Shown when locking mode is turned off."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "SettingLockBoostChar",
|
||||
"len": 1,
|
||||
"default": "B"
|
||||
"default": "B",
|
||||
"description": "Shown when the locking mode is set to lock all buttons except for boost mode."
|
||||
},
|
||||
{
|
||||
"id": "SettingLockFullChar",
|
||||
"len": 1,
|
||||
"default": "F"
|
||||
},
|
||||
{
|
||||
"id": "SettingNAChar",
|
||||
"len": 3,
|
||||
"default": "N/A"
|
||||
"default": "F",
|
||||
"description": "Shown when the locking mode is set to lock all buttons."
|
||||
}
|
||||
],
|
||||
"menuGroups": [
|
||||
{
|
||||
"id": "PowerMenu",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "Menu for settings related to power. Main settings to do with the input voltage."
|
||||
},
|
||||
{
|
||||
"id": "SolderingMenu",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "Settings for soldering mode, such as boost temps, the increment used when pressing buttons and if button locking is enabled."
|
||||
},
|
||||
{
|
||||
"id": "PowerSavingMenu",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "Settings to do with power saving, such as sleep mode, sleep temps, and shutdown modes."
|
||||
},
|
||||
{
|
||||
"id": "UIMenu",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "User interface related settings, such as units."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "AdvancedMenu",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "Advanced settings. Misc catchall for settings that don't fit anywhere else or settings that require some thought before use."
|
||||
}
|
||||
],
|
||||
"menuOptions": [
|
||||
{
|
||||
"id": "DCInCutoff",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "When the device is powered by a battery, this adjusts the low voltage threshold for when the unit should turn off the heater to protect the battery."
|
||||
},
|
||||
{
|
||||
"id": "SleepTemperature",
|
||||
"maxLen": 4,
|
||||
"maxLen2": 9
|
||||
"maxLen2": 9,
|
||||
"description": "Temperature the device will drop down to while asleep. Typically around halfway between off and soldering temperature."
|
||||
},
|
||||
{
|
||||
"id": "SleepTimeout",
|
||||
"maxLen": 4,
|
||||
"maxLen2": 9
|
||||
"maxLen2": 9,
|
||||
"description": "How long of a period without movement / button-pressing is required before the device drops down to the sleep temperature."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "ShutdownTimeout",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "How long of a period without movement / button-pressing is required before the device turns off the tip heater completely and returns to the main idle screen."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "MotionSensitivity",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "Scale of how sensitive the device is to movement. Higher numbers == more sensitive. 0 == motion detection turned off."
|
||||
},
|
||||
{
|
||||
"id": "TemperatureUnit",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "If the device shows temperatures in °C or °F."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "AdvancedIdle",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "Should the device show an 'advanced' view on the idle screen. The advanced view uses text to show more details than the typical icons."
|
||||
},
|
||||
{
|
||||
"id": "DisplayRotation",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "If the display should rotate automatically or if it should be fixed for left- or right-handed mode."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "BoostTemperature",
|
||||
"maxLen": 4,
|
||||
"maxLen2": 9
|
||||
"maxLen2": 9,
|
||||
"description": "When the unit is in soldering mode. You can hold down the button at the front of the device to temporarily override the soldering temperature to this value. This SETS the temperature, it does not ADD to it."
|
||||
},
|
||||
{
|
||||
"id": "AutoStart",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "When the device powers up, should it enter into a special mode. These settings set it to either start into soldering mode, sleeping mode or auto mode (Enters into soldering mode on the first movement)."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "CooldownBlink",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "If the idle screen should blink the tip temperature for attention while the tip is over 50°C. Intended as a 'tip is still hot' warning."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "TemperatureCalibration",
|
||||
"maxLen": 8,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Used to calibrate the ADC+Op-amp offsets for the tip. This calibration must be performed when the tip temperature and the handle temperature are equal. Generally not required unless your device is reading more than 5°C off target."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "SettingsReset",
|
||||
"maxLen": 8,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Resets all settings and calibrations to factory defaults. Does NOT erase custom user boot up logo's."
|
||||
},
|
||||
{
|
||||
"id": "VoltageCalibration",
|
||||
"maxLen": 8,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Enters an adjustment mode where you can gradually adjust the measured voltage to compensate for any unit-to-unit variance in the voltage sense resistors."
|
||||
},
|
||||
{
|
||||
"id": "AdvancedSoldering",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "Should the device show an 'advanced' soldering view. This is a text-based view that shows more information at the cost of no nice graphics."
|
||||
},
|
||||
{
|
||||
"id": "ScrollingSpeed",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "How fast the description text scrolls when hovering on a menu. Faster speeds may induce tearing, but allow reading the whole description faster."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "QCMaxVoltage",
|
||||
"maxLen": 8,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "This adjusts the maximum voltage the QC negotiation will adjust to. Does NOT affect USB-PD. Should be set safely based on the current rating of your power supply."
|
||||
},
|
||||
{
|
||||
"id": "PDNegTimeout",
|
||||
"maxLen": 8,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "How long until firmware stops trying to negotiate for USB-PD and tries QC instead. Longer times may help dodgy / old PD adapters, faster times move onto PD quickly. Units of 100ms. Recommended to keep small values."
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
"id": "PowerLimit",
|
||||
"maxLen": 5,
|
||||
"maxLen2": 11
|
||||
"maxLen2": 11,
|
||||
"description": "Allows setting a custom wattage for the device to aim to keep the AVERAGE power below. The unit can't control its peak power no matter how you set this. (Except for MHP30 which will regulate nicely to this). If USB-PD is in use, the limit will be set to the lower of this and the supplies advertised wattage."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "ReverseButtonTempChange",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Swaps which button increments and decrements on temperature change screens."
|
||||
},
|
||||
{
|
||||
"id": "TempChangeShortStep",
|
||||
"maxLen": 8,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Factor by which the temperature is changed with a quick press of the buttons."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "TempChangeLongStep",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Factor by which the temperature is changed with a hold of the buttons."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "PowerPulsePower",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 16
|
||||
"maxLen2": 15,
|
||||
"description": "Enables and sets the wattage of the power pulse. Power pulse causes the device to briefly turn on the heater to draw power to avoid power banks going to sleep."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "HallEffSensitivity",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 8
|
||||
"maxLen2": 8,
|
||||
"description": "If the unit has a hall effect sensor (Pinecil), this adjusts how sensitive it is at detecting a magnet to put the device into sleep mode."
|
||||
|
||||
},
|
||||
{
|
||||
"id": "LockingMode",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "If locking the buttons against accidental presses is enabled."
|
||||
},
|
||||
{
|
||||
"id": "MinVolCell",
|
||||
"maxLen": 4,
|
||||
"maxLen2": 9
|
||||
"maxLen2": 9,
|
||||
"description": "When powered by a battery, this adjusts the minimum voltage per cell before shutdown. (This is multiplied by the cell count.)"
|
||||
},
|
||||
{
|
||||
"id": "AnimLoop",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "Should the menu animations loop. Only visible if the animation speed is not set to \"Off\""
|
||||
},
|
||||
{
|
||||
"id": "AnimSpeed",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "How fast should the menu animations loop, or if they should not loop at all."
|
||||
},
|
||||
{
|
||||
"id": "PowerPulseWait",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "Adjusts the time interval between power pulses. Longer gaps reduce undesired heating of the tip, but needs to be fast enough to keep your power bank awake."
|
||||
},
|
||||
{
|
||||
"id": "PowerPulseDuration",
|
||||
"maxLen": 6,
|
||||
"maxLen2": 13
|
||||
"maxLen2": 13,
|
||||
"description": "How long should the power pulse go for. Some power banks require seeing the power draw be sustained for a certain duration to keep awake. Should be kept as short as possible to avoid wasting power / undesired heating of the tip."
|
||||
},
|
||||
{
|
||||
"id": "LanguageSwitch",
|
||||
"maxLen": 7,
|
||||
"maxLen2": 15
|
||||
"maxLen2": 15,
|
||||
"description": "Changes the device language on multi-lingual builds."
|
||||
},
|
||||
{
|
||||
"id": "Brightness",
|
||||
"maxLen": 7,
|
||||
"maxLen2": 15
|
||||
"maxLen2": 15,
|
||||
"description": "Display brightness. Higher values age the OLED faster due to burn-in. (However, it is notable that most of these screens die from other causes first.)"
|
||||
},
|
||||
{
|
||||
"id": "ColourInversion",
|
||||
"maxLen": 7,
|
||||
"maxLen2": 15
|
||||
"maxLen2": 15,
|
||||
"description": "Inverts the entire OLED."
|
||||
},
|
||||
{
|
||||
"id": "LOGOTime",
|
||||
"maxLen": 7,
|
||||
"maxLen2": 15,
|
||||
"description": "Sets the duration for the boot logo (S=seconds)."
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
4
build.sh
4
build.sh
@@ -1,2 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
docker-compose run --rm builder /bin/bash /build/ci/buildAll.sh
|
||||
#!/bin/sh
|
||||
docker-compose run --rm builder /bin/bash /build/ci/buildAll.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/sh
|
||||
set -e
|
||||
set -u
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ services:
|
||||
tty: true
|
||||
build:
|
||||
context: .
|
||||
command: /bin/bash
|
||||
command: /bin/sh
|
||||
volumes:
|
||||
- ./ci:/build/ci:Z
|
||||
- ./:/build/source:Z
|
||||
|
||||
38
setup.sh
38
setup.sh
@@ -1,38 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
# Setup shell file to setup the environment on an ubuntu machine
|
||||
sudo apt-get update && sudo apt-get install -y make bzip2 git python3 python3-pip wget dfu-util
|
||||
python3 -m pip install bdflib black flake8
|
||||
sudo mkdir -p /build
|
||||
cd /build
|
||||
|
||||
# Download source files to cache folder
|
||||
# Remember if these are updated, you need to update the md5 file respectively
|
||||
# Github checks out under $GITHUB_WORKSPACE
|
||||
MDPATH=${GITHUB_WORKSPACE:-/build/source/}
|
||||
sudo mkdir -p /build/cache
|
||||
cd /build/cache/
|
||||
if md5sum -c $MDPATH/ci/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2.md5; then
|
||||
echo "Good MD5 ARM"
|
||||
else
|
||||
echo "ARM MD5 Mismatch, downloading fresh"
|
||||
rm -rf /build/cache/gcc-arm*.bz2 || true
|
||||
sudo wget -q "https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2" -O gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
|
||||
fi
|
||||
|
||||
if md5sum -c $MDPATH/ci/nuclei_riscv_newlibc_prebuilt_linux64_2020.08.tar.bz2.md5; then
|
||||
echo "Good MD5 RISCV"
|
||||
else
|
||||
echo "RISCV MD5 Mismatch, downloading fresh"
|
||||
rm -rf /build/cache/nuclei*.bz2 || true
|
||||
sudo wget -q "https://github.com/Ralim/nuclei-compiler/releases/download/2020.08/nuclei_riscv_newlibc_prebuilt_linux64_2020.08.tar.bz2" -O nuclei_riscv_newlibc_prebuilt_linux64_2020.08.tar.bz2
|
||||
fi
|
||||
|
||||
echo "Extracting compilers"
|
||||
sudo tar -xj -f gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2 -C /build/
|
||||
sudo tar -xj -f nuclei_riscv_newlibc_prebuilt_linux64_2020.08.tar.bz2 -C /build/
|
||||
|
||||
echo "Link into PATH"
|
||||
|
||||
sudo ln -s /build/gcc-arm-none-eabi-10-2020-q4-major/bin/* /usr/local/bin
|
||||
sudo ln -s /build/gcc/bin/* /usr/local/bin
|
||||
9
source/CMake/arm-gcc.cmake
Normal file
9
source/CMake/arm-gcc.cmake
Normal file
@@ -0,0 +1,9 @@
|
||||
# which compilers to use for C and C++
|
||||
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
|
||||
set(CMAKE_C_COMPILER arm-none-eabi-gcc CACHE INTERNAL "C Compiler")
|
||||
set(CMAKE_CXX_COMPILER arm-none-eabi-g++ CACHE INTERNAL "C++ Compiler")
|
||||
set(CMAKE_ASM_COMPILER arm-none-eabi-gcc -x assembler-with-cpp CACHE INTERNAL "ASM Compiler")
|
||||
set(CMAKE_OBJCOPY arm-none-eabi-objcopy CACHE INTERNAL "Object Copy")
|
||||
set(CMAKE_OBJDUMP arm-none-eabi-objdump CACHE INTERNAL "Object Dump")
|
||||
|
||||
|
||||
6
source/CMake/gd32vf1.cmake
Normal file
6
source/CMake/gd32vf1.cmake
Normal file
@@ -0,0 +1,6 @@
|
||||
# core flags
|
||||
|
||||
set(CORE_FLAGS "-march=rv32imac -mabi=ilp32 -mcmodel=medany -fsigned-char -fno-builtin -nostartfiles" CACHE INTERNAL "CPU flags")
|
||||
add_definitions(${CORE_FLAGS})
|
||||
# link with linker file
|
||||
target_link_libraries(${elf_file} PUBLIC -T ${CMAKE_CURRENT_SOURCE_DIR}/linkers/gd32vf103.ld)
|
||||
9
source/CMake/riscv-gcc.cmake
Normal file
9
source/CMake/riscv-gcc.cmake
Normal file
@@ -0,0 +1,9 @@
|
||||
# which compilers to use for C and C++
|
||||
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
|
||||
set(CMAKE_C_COMPILER riscv-none-elf-gcc CACHE INTERNAL "C Compiler")
|
||||
set(CMAKE_CXX_COMPILER riscv-none-elf-g++ CACHE INTERNAL "C++ Compiler")
|
||||
set(CMAKE_ASM_COMPILER riscv-none-elf-gcc -x assembler-with-cpp CACHE INTERNAL "ASM Compiler")
|
||||
set(CMAKE_OBJCOPY riscv-none-elf-objcopy CACHE INTERNAL "Object Copy")
|
||||
set(CMAKE_OBJDUMP riscv-none-elf-objdump CACHE INTERNAL "Object Dump")
|
||||
|
||||
|
||||
26
source/CMake/shared-compiler-settings.cmake
Normal file
26
source/CMake/shared-compiler-settings.cmake
Normal file
@@ -0,0 +1,26 @@
|
||||
|
||||
# set additional for compiler and linker: optimization and generate map file
|
||||
set(additional_linker_flags -Wl,-Map=${map_file},--cref,--no-warn-mismatch)
|
||||
target_link_libraries(${elf_file} PRIVATE ${additional_linker_flags})
|
||||
|
||||
# remove unused sections
|
||||
target_link_libraries(${elf_file} PUBLIC "-Wl,--gc-sections -Wl,--wrap=malloc -Wl,--wrap=free -Wl,--undefined=vTaskSwitchContext -Wl,--undefined=pxCurrentTCB --specs=nosys.specs -Wl,--print-memory-usage -flto")
|
||||
|
||||
set(TARGET_FLAGS "-DMODEL_${MODEL}")
|
||||
|
||||
set(OPTIM_FLAGS "-Os -flto -finline-small-functions -findirect-inlining -fdiagnostics-color -ffunction-sections -fdata-sections -fshort-enums -fsingle-precision-constant -ffreestanding -fno-common")
|
||||
|
||||
message(ERROR "flags >${CORE_FLAGS}<")
|
||||
# compiler: language specific flags
|
||||
set(CMAKE_C_FLAGS " ${CORE_FLAGS} ${OPTIM_FLAGS} ${TARGET_FLAGS} -fno-builtin -Wall -std=gnu11 -fdata-sections -ffunction-sections -g3 " CACHE INTERNAL "c compiler flags")
|
||||
set(CMAKE_CXX_FLAGS " ${CORE_FLAGS} ${OPTIM_FLAGS} ${TARGET_FLAGS} -fno-rtti -fno-exceptions -fno-builtin -Wall -std=gnu++11 -fdata-sections -ffunction-sections -g -ggdb3" CACHE INTERNAL "cxx compiler flags")
|
||||
set(CMAKE_ASM_FLAGS " ${CORE_FLAGS} ${OPTIM_FLAGS} ${TARGET_FLAGS} -g -ggdb3 -D__USES_CXX" CACHE INTERNAL "asm compiler flags")
|
||||
|
||||
# search for programs in the build host directories
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
|
||||
# for libraries and headers in the target directories
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
||||
|
||||
6
source/CMake/stm32f1.cmake
Normal file
6
source/CMake/stm32f1.cmake
Normal file
@@ -0,0 +1,6 @@
|
||||
# core flags
|
||||
|
||||
set(CORE_FLAGS "-mthumb -mcpu=cortex-m3 -mlittle-endian -mfloat-abi=soft" CACHE INTERNAL "CPU flags")
|
||||
add_definitions(${CORE_FLAGS})
|
||||
# link with linker file
|
||||
target_link_libraries(${elf_file} PUBLIC -T ${CMAKE_CURRENT_SOURCE_DIR}/linkers/stm32f103.ld)
|
||||
87
source/CMakeLists.txt
Normal file
87
source/CMakeLists.txt
Normal file
@@ -0,0 +1,87 @@
|
||||
cmake_minimum_required(VERSION 3.23)
|
||||
set(application_name "${MODEL}_${LANG}")
|
||||
set(elf_file ${application_name}.elf)
|
||||
set(bin_file ${application_name}.bin)
|
||||
set(hex_file ${application_name}.hex)
|
||||
set(map_file ${application_name}.map)
|
||||
|
||||
set (CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${CMAKE_CURRENT_SOURCE_DIR}/CMake")
|
||||
|
||||
|
||||
|
||||
if (MODEL STREQUAL TS100 OR MODEL STREQUAL TS80 OR MODEL STREQUAL TS80P)
|
||||
set(CMAKE_TOOLCHAIN_FILE "CMake/arm-gcc.cmake" CACHE PATH "toolchain file")
|
||||
include(${CMAKE_TOOLCHAIN_FILE})
|
||||
elseif(MODEL STREQUAL Pinecil)
|
||||
set(CMAKE_TOOLCHAIN_FILE "CMake/riscv-gcc.cmake" CACHE PATH "toolchain file")
|
||||
include(${CMAKE_TOOLCHAIN_FILE})
|
||||
elseif(MODEL STREQUAL MHP30)
|
||||
set(CMAKE_TOOLCHAIN_FILE "CMake/arm-gcc.cmake" CACHE PATH "toolchain file")
|
||||
include(${CMAKE_TOOLCHAIN_FILE})
|
||||
else()
|
||||
message(FATAL_ERROR "You must specify a model")
|
||||
endif()
|
||||
|
||||
|
||||
# Export compile commands for IDE's
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
#add_compile_options( -Wall -Werror)
|
||||
|
||||
|
||||
project(IronOS
|
||||
LANGUAGES C CXX ASM
|
||||
)
|
||||
#Setup outputs
|
||||
|
||||
project (${application_name} C CXX ASM)
|
||||
|
||||
|
||||
# add sources to elf file
|
||||
|
||||
file(WRITE null.cpp "")
|
||||
|
||||
add_executable(${elf_file}
|
||||
null.cpp
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
include_directories(
|
||||
Core
|
||||
Middlewares
|
||||
)
|
||||
add_subdirectory(Core)
|
||||
add_subdirectory(Middlewares)
|
||||
|
||||
|
||||
|
||||
target_link_libraries(${elf_file} PRIVATE BSP mainSource threads FreeRTOS languages BSPImplementation drivers USBPDLib)
|
||||
|
||||
if (MODEL STREQUAL TS100 OR MODEL STREQUAL TS80 OR MODEL STREQUAL TS80P)
|
||||
include(stm32f1)
|
||||
elseif(MODEL STREQUAL Pinecil)
|
||||
include(gd32vf1)
|
||||
elseif(MODEL STREQUAL MHP30)
|
||||
include(stm32f1)
|
||||
else()
|
||||
message(FATAL_ERROR "You must specify a model")
|
||||
endif()
|
||||
include(shared-compiler-settings)
|
||||
|
||||
|
||||
# set additional for compiler and linker: optimization and generate map file
|
||||
set(additional_compiler_flags ${opt_level})
|
||||
set(additional_linker_flags -Wl,-Map=${map_file},--cref,--no-warn-mismatch)
|
||||
target_compile_options(${elf_file} PRIVATE ${additional_compiler_flags})
|
||||
target_link_libraries(${elf_file} PRIVATE ${additional_linker_flags})
|
||||
|
||||
# remove unused sections
|
||||
|
||||
|
||||
|
||||
# create binary and hex files
|
||||
add_custom_target(${hex_file} DEPENDS ${elf_file} COMMAND ${CMAKE_OBJCOPY} -O ihex ${elf_file} ${hex_file})
|
||||
add_custom_target(${bin_file} DEPENDS ${elf_file} COMMAND ${CMAKE_OBJCOPY} -O binary ${elf_file} ${bin_file})
|
||||
@@ -3,7 +3,6 @@
|
||||
#include "BSP_Power.h"
|
||||
#include "BSP_QC.h"
|
||||
#include "Defines.h"
|
||||
#include "configuration.h"
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
/*
|
||||
@@ -56,7 +55,7 @@ void reboot();
|
||||
|
||||
// If the user has programmed in a bootup logo, draw it to the screen from flash
|
||||
// Returns 1 if the logo was printed so that the unit waits for the timeout or button
|
||||
uint8_t showBootLogoIfavailable();
|
||||
void showBootLogoIfavailable();
|
||||
// delay wrapper for delay using the hardware timer (used before RTOS)
|
||||
void delay_ms(uint16_t count);
|
||||
// Probe if the Hall sensor is fitted to the unit
|
||||
@@ -74,6 +73,9 @@ void log_system_state(int32_t PWMWattsx10);
|
||||
// Returns true if the tip is disconnected
|
||||
bool isTipDisconnected();
|
||||
|
||||
// Return hardware unique ID if possible
|
||||
uint64_t getDeviceID();
|
||||
|
||||
// Status LED controls
|
||||
|
||||
enum StatusLED {
|
||||
@@ -86,6 +88,10 @@ enum StatusLED {
|
||||
};
|
||||
void setStatusLED(const enum StatusLED state);
|
||||
|
||||
// preStartChecks are run until they return 0
|
||||
// By the PID, after each ADC sample comes in
|
||||
// For example, on the MHP30 this is used to figure out the resistance of the hotplate
|
||||
uint8_t preStartChecks();
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
20
source/Core/BSP/CMakeLists.txt
Normal file
20
source/Core/BSP/CMakeLists.txt
Normal file
@@ -0,0 +1,20 @@
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
set(sources
|
||||
BSP_Common.c
|
||||
)
|
||||
|
||||
|
||||
add_library(BSP ${sources})
|
||||
target_include_directories(BSP PUBLIC .)
|
||||
target_link_libraries(BSP PUBLIC FreeRTOS)
|
||||
|
||||
if (MODEL STREQUAL TS100 OR MODEL STREQUAL TS80 OR MODEL STREQUAL TS80P)
|
||||
add_subdirectory(Miniware)
|
||||
elseif(MODEL STREQUAL Pinecil)
|
||||
add_subdirectory(Pine64)
|
||||
elseif(MODEL STREQUAL MHP30)
|
||||
add_subdirectory(MHP30)
|
||||
else()
|
||||
message(FATAL_ERROR "You must specify a model")
|
||||
endif()
|
||||
@@ -13,13 +13,15 @@
|
||||
#include <IRQ.h>
|
||||
|
||||
WS2812<GPIOA_BASE, WS2812_Pin, 1> ws2812;
|
||||
volatile uint16_t PWMSafetyTimer = 0;
|
||||
volatile uint8_t pendingPWM = 0;
|
||||
uint16_t totalPWM = 255;
|
||||
const uint16_t powerPWM = 255;
|
||||
volatile uint16_t PWMSafetyTimer = 0;
|
||||
volatile uint8_t pendingPWM = 0;
|
||||
uint16_t totalPWM = 255;
|
||||
const uint16_t powerPWM = 255;
|
||||
uint16_t tipSenseResistancex10Ohms = 0;
|
||||
volatile bool tipMeasurementOccuring = false;
|
||||
history<uint16_t, PID_TIM_HZ> rawTempFilter = {{0}, 0, 0};
|
||||
|
||||
history<uint16_t, PID_TIM_HZ> rawTempFilter = {{0}, 0, 0};
|
||||
void resetWatchdog() { HAL_IWDG_Refresh(&hiwdg); }
|
||||
void resetWatchdog() { HAL_IWDG_Refresh(&hiwdg); }
|
||||
|
||||
#ifdef TEMP_NTC
|
||||
// Lookup table for the NTC
|
||||
@@ -208,7 +210,8 @@ uint16_t getHandleTemperature(uint8_t sample) {
|
||||
uint16_t getTipInstantTemperature() { return getADC(2); }
|
||||
|
||||
uint16_t getTipRawTemp(uint8_t refresh) {
|
||||
if (refresh) {
|
||||
if (refresh && (tipMeasurementOccuring == false)) {
|
||||
|
||||
uint16_t lastSample = getTipInstantTemperature();
|
||||
rawTempFilter.update(lastSample);
|
||||
return lastSample;
|
||||
@@ -348,69 +351,82 @@ void setPlatePullup(bool pullingUp) {
|
||||
HAL_GPIO_Init(PLATE_SENSOR_PULLUP_GPIO_Port, &GPIO_InitStruct);
|
||||
}
|
||||
|
||||
uint16_t tipSenseResistancex10Ohms = 0;
|
||||
bool isTipDisconnected() {
|
||||
static bool lastTipDisconnectedState = true;
|
||||
static uint16_t adcReadingPD1Set = 0;
|
||||
static TickType_t lastMeas = 0;
|
||||
void performTipMeasurementStep(bool start) {
|
||||
static uint16_t adcReadingPD1Set = 0;
|
||||
static TickType_t lastMeas = 0;
|
||||
// Inter state that performs the steps to measure the resistor on the tip
|
||||
// Return 1 if a measurement is ongoing
|
||||
|
||||
// We want to perform our startup measurements of the tip resistance until we detect one fitted
|
||||
|
||||
// Step 1; if not setup, we turn on pullup and then wait
|
||||
if (tipMeasurementOccuring == false && (start || tipSenseResistancex10Ohms == 0 || lastMeas == 0)) {
|
||||
tipMeasurementOccuring = true;
|
||||
tipSenseResistancex10Ohms = 0;
|
||||
lastMeas = xTaskGetTickCount();
|
||||
adcReadingPD1Set = 0;
|
||||
setPlatePullup(true);
|
||||
return;
|
||||
}
|
||||
|
||||
// Wait 100ms for settle time
|
||||
if ((xTaskGetTickCount() - lastMeas) < (TICKS_100MS)) {
|
||||
return;
|
||||
}
|
||||
|
||||
lastMeas = xTaskGetTickCount();
|
||||
// We are sensing the resistance
|
||||
if (adcReadingPD1Set == 0) {
|
||||
// We will record the reading for PD1 being set
|
||||
adcReadingPD1Set = getADC(3);
|
||||
setPlatePullup(false);
|
||||
return;
|
||||
}
|
||||
// Taking reading two
|
||||
uint16_t adcReadingPD1Cleared = getADC(3);
|
||||
uint32_t a = ((int)adcReadingPD1Set - (int)adcReadingPD1Cleared);
|
||||
a *= 10000;
|
||||
uint32_t b = ((int)adcReadingPD1Cleared + (32768 - (int)adcReadingPD1Set));
|
||||
if (b) {
|
||||
tipSenseResistancex10Ohms = a / b;
|
||||
} else {
|
||||
tipSenseResistancex10Ohms = adcReadingPD1Set = lastMeas = 0;
|
||||
}
|
||||
if (tipSenseResistancex10Ohms > 1100 || tipSenseResistancex10Ohms < 900) {
|
||||
tipSenseResistancex10Ohms = 0; // out of range
|
||||
adcReadingPD1Set = 0;
|
||||
lastMeas = 0;
|
||||
return;
|
||||
}
|
||||
tipMeasurementOccuring = false;
|
||||
}
|
||||
bool isTipDisconnected() {
|
||||
static bool lastDisconnectedState = false;
|
||||
// For the MHP30 we want to include a little extra logic in here
|
||||
// As when the tip is first connected we want to measure the ~100 ohm resistor on the base of the tip
|
||||
// And likewise if its removed we want to clear that measurement
|
||||
/*
|
||||
* plate_sensor_res = ((adc5_value_PD1_set - adc5_value_PD1_cleared) / (adc5_value_PD1_cleared + 4096 - adc5_value_PD1_set)) * 1000.0;
|
||||
* */
|
||||
|
||||
bool tipDisconnected = getADC(2) > (4090 * 8);
|
||||
// We have to handle here that this ^ will trip while measuring the gain resistor
|
||||
if (xTaskGetTickCount() - lastMeas < (TICKS_100MS * 2 + (TICKS_100MS / 2))) {
|
||||
tipDisconnected = false;
|
||||
if (tipMeasurementOccuring) {
|
||||
performTipMeasurementStep(false);
|
||||
return true; // We fake no tip disconnection during the measurement cycle to mask it
|
||||
}
|
||||
|
||||
if (tipDisconnected != lastTipDisconnectedState) {
|
||||
if (tipDisconnected) {
|
||||
// Tip is now disconnected
|
||||
tipSenseResistancex10Ohms = 0; // zero out the resistance
|
||||
adcReadingPD1Set = 0;
|
||||
lastMeas = 0;
|
||||
}
|
||||
lastTipDisconnectedState = tipDisconnected;
|
||||
// If we are too close to the top, most likely disconnected tip
|
||||
bool tipDisconnected = getTipInstantTemperature() > (4090 * 8);
|
||||
if (tipDisconnected == false && lastDisconnectedState == true) {
|
||||
// Tip is now disconnected
|
||||
performTipMeasurementStep(true);
|
||||
}
|
||||
if (!tipDisconnected) {
|
||||
if (tipSenseResistancex10Ohms == 0) {
|
||||
if (lastMeas == 0) {
|
||||
lastMeas = xTaskGetTickCount();
|
||||
setPlatePullup(true);
|
||||
} else if (xTaskGetTickCount() - lastMeas > (TICKS_100MS)) {
|
||||
lastMeas = xTaskGetTickCount();
|
||||
// We are sensing the resistance
|
||||
if (adcReadingPD1Set == 0) {
|
||||
// We will record the reading for PD1 being set
|
||||
adcReadingPD1Set = getADC(3);
|
||||
setPlatePullup(false);
|
||||
} else {
|
||||
// We have taken reading one
|
||||
uint16_t adcReadingPD1Cleared = getADC(3);
|
||||
uint32_t a = ((int)adcReadingPD1Set - (int)adcReadingPD1Cleared);
|
||||
a *= 10000;
|
||||
uint32_t b = ((int)adcReadingPD1Cleared + (32768 - (int)adcReadingPD1Set));
|
||||
if (b) {
|
||||
tipSenseResistancex10Ohms = a / b;
|
||||
} else {
|
||||
tipSenseResistancex10Ohms = adcReadingPD1Set = lastMeas = 0;
|
||||
}
|
||||
if (tipSenseResistancex10Ohms > 1100 || tipSenseResistancex10Ohms < 900) {
|
||||
tipSenseResistancex10Ohms = 0; // out of range
|
||||
adcReadingPD1Set = 0;
|
||||
lastMeas = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true; // we fake tip being disconnected until this is measured
|
||||
}
|
||||
}
|
||||
|
||||
lastDisconnectedState = tipDisconnected;
|
||||
return tipDisconnected;
|
||||
}
|
||||
|
||||
uint8_t preStartChecks() {
|
||||
performTipMeasurementStep(false);
|
||||
return tipMeasurementOccuring ? 1 : 0;
|
||||
}
|
||||
void setBuzzer(bool on) {
|
||||
if (on) {
|
||||
htim3.Instance->CCR2 = 128;
|
||||
@@ -455,3 +471,7 @@ void setStatusLED(const enum StatusLED state) {
|
||||
setBuzzer(false);
|
||||
}
|
||||
}
|
||||
uint64_t getDeviceID() {
|
||||
//
|
||||
return HAL_GetUIDw0() | ((uint64_t)HAL_GetUIDw1() << 32);
|
||||
}
|
||||
@@ -10,7 +10,8 @@
|
||||
#include "configuration.h"
|
||||
extern uint16_t tipSenseResistancex10Ohms;
|
||||
uint32_t TipThermoModel::convertuVToDegC(uint32_t tipuVDelta) {
|
||||
// For the MHP30, we are mimicing the original code and using the resistor fitted to the base of the heater head, this is measured in the isTipDisconnected() function
|
||||
// For the MHP30, we are mimicing the original code and using the resistor fitted to the base of the heater head,
|
||||
// this is measured at boot in pid task and in the disconnected tip check if tip is removed
|
||||
if (tipSenseResistancex10Ohms > 900 && tipSenseResistancex10Ohms <= 1100) {
|
||||
int32_t a = ((tipSenseResistancex10Ohms / 10) + 300) * (3300000 - tipuVDelta);
|
||||
int32_t b = a / 1000000;
|
||||
|
||||
@@ -95,8 +95,9 @@
|
||||
#define DETAILED_SOLDERING 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_TEMP_C 20
|
||||
// Due to large thermal mass of the PCB being heated we need to pull this back a bit
|
||||
#define THERMAL_RUNAWAY_TIME_SEC 45
|
||||
#define THERMAL_RUNAWAY_TEMP_C 3
|
||||
|
||||
#define CUT_OUT_SETTING 0 // default to no cut-off voltage
|
||||
#define RECOM_VOL_CELL 33 // Minimum voltage per cell (Recommended 3.3V (33))
|
||||
@@ -118,25 +119,26 @@
|
||||
#endif
|
||||
|
||||
#ifdef MODEL_MHP30
|
||||
#define SOLDERING_TEMP 200 // Default soldering temp is 200.0 °C
|
||||
#define VOLTAGE_DIV 360 // Default for MHP30
|
||||
#define PID_POWER_LIMIT 65 // Sets the max pwm power limit
|
||||
#define CALIBRATION_OFFSET 0 // the adc offset in uV - MHP compensates automagically
|
||||
#define POWER_LIMIT 65 // 65 watts default power limit
|
||||
#define MAX_POWER_LIMIT 65 //
|
||||
#define POWER_LIMIT_STEPS 1 //
|
||||
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_MHP30 //
|
||||
#define USB_PD_VMAX 20 // Maximum voltage for PD to negotiate
|
||||
#define MODEL_HAS_DCDC // Has inductor to current filter
|
||||
#define PID_TIM_HZ (16) //
|
||||
#define MAX_TEMP_C 300 // Max soldering temp selectable °C
|
||||
#define MAX_TEMP_F 570 // 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 150 // The min settable temp for boost mode °C
|
||||
#define MIN_BOOST_TEMP_F 300 // The min settable temp for boost mode °F
|
||||
#define NO_DISPLAY_ROTATE // Disable OLED rotation by accel
|
||||
#define SLEW_LIMIT 50 // Limit to 3.0 Watts per 64ms pid loop update rate slew rate
|
||||
#define SOLDERING_TEMP 200 // Default soldering temp is 200.0 °C
|
||||
#define VOLTAGE_DIV 360 // Default for MHP30
|
||||
#define PID_POWER_LIMIT 65 // Sets the max pwm power limit
|
||||
#define CALIBRATION_OFFSET 0 // the adc offset in uV - MHP compensates automagically
|
||||
#define MIN_CALIBRATION_OFFSET 0 // Min value for calibration
|
||||
#define POWER_LIMIT 65 // 65 watts default power limit
|
||||
#define MAX_POWER_LIMIT 65 //
|
||||
#define POWER_LIMIT_STEPS 1 //
|
||||
#define OP_AMP_GAIN_STAGE OP_AMP_GAIN_STAGE_MHP30 //
|
||||
#define USB_PD_VMAX 20 // Maximum voltage for PD to negotiate
|
||||
#define MODEL_HAS_DCDC // Has inductor to current filter
|
||||
#define PID_TIM_HZ (16) //
|
||||
#define MAX_TEMP_C 350 // Max soldering temp selectable °C
|
||||
#define MAX_TEMP_F 660 // 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 150 // The min settable temp for boost mode °C
|
||||
#define MIN_BOOST_TEMP_F 300 // The min settable temp for boost mode °F
|
||||
#define NO_DISPLAY_ROTATE // Disable OLED rotation by accel
|
||||
#define SLEW_LIMIT 50 // Limit to 3.0 Watts per 64ms pid loop update rate slew rate
|
||||
#define ACCEL_MSA
|
||||
#define POW_PD 1
|
||||
#define TEMP_NTC
|
||||
@@ -154,3 +156,5 @@
|
||||
#define NO_SLEEP_MODE
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define FLASH_LOGOADDR (0x08000000 + (62 * 1024))
|
||||
@@ -1,25 +0,0 @@
|
||||
/*
|
||||
* logo.c
|
||||
*
|
||||
* Created on: 29 May 2020
|
||||
* Author: Ralim
|
||||
*/
|
||||
|
||||
#include "BSP.h"
|
||||
#include "OLED.hpp"
|
||||
|
||||
static uint8_t logo_page[1024] __attribute__((section(".logo_page")));
|
||||
|
||||
// Logo header signature.
|
||||
#define LOGO_HEADER_VALUE 0xF00DAA55
|
||||
|
||||
uint8_t showBootLogoIfavailable() {
|
||||
// Do not show logo data if signature is not found.
|
||||
if (LOGO_HEADER_VALUE != *(reinterpret_cast<const uint32_t *>(logo_page))) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
OLED::drawAreaSwapped(0, 0, 96, 16, (uint8_t *)(logo_page + 4));
|
||||
OLED::refresh();
|
||||
return 1;
|
||||
}
|
||||
@@ -20,6 +20,7 @@ static const uint8_t tempMeasureTicks = 14;
|
||||
uint16_t totalPWM; // htim2.Init.Period, the full PWM cycle
|
||||
|
||||
static bool fastPWM;
|
||||
static bool infastPWM;
|
||||
|
||||
void resetWatchdog() { HAL_IWDG_Refresh(&hiwdg); }
|
||||
#ifdef TEMP_NTC
|
||||
@@ -135,7 +136,7 @@ uint16_t getInputVoltageX10(uint16_t divisor, uint8_t sample) {
|
||||
|
||||
static void switchToFastPWM(void) {
|
||||
// 10Hz
|
||||
fastPWM = true;
|
||||
infastPWM = true;
|
||||
totalPWM = powerPWM + tempMeasureTicks + holdoffTicks;
|
||||
htim2.Instance->ARR = totalPWM;
|
||||
htim2.Instance->CCR1 = powerPWM + holdoffTicks;
|
||||
@@ -144,7 +145,7 @@ static void switchToFastPWM(void) {
|
||||
|
||||
static void switchToSlowPWM(void) {
|
||||
// 5Hz
|
||||
fastPWM = false;
|
||||
infastPWM = false;
|
||||
totalPWM = powerPWM + tempMeasureTicks / 2 + holdoffTicks / 2;
|
||||
htim2.Instance->ARR = totalPWM;
|
||||
htim2.Instance->CCR1 = powerPWM + holdoffTicks / 2;
|
||||
@@ -152,16 +153,10 @@ static void switchToSlowPWM(void) {
|
||||
}
|
||||
|
||||
void setTipPWM(const uint8_t pulse, const bool shouldUseFastModePWM) {
|
||||
PWMSafetyTimer = 10; // This is decremented in the handler for PWM so that the tip pwm is
|
||||
PWMSafetyTimer = 20; // This is decremented in the handler for PWM so that the tip pwm is
|
||||
// disabled if the PID task is not scheduled often enough.
|
||||
fastPWM = shouldUseFastModePWM;
|
||||
pendingPWM = pulse;
|
||||
if (fastPWM != shouldUseFastModePWM) {
|
||||
if (shouldUseFastModePWM) {
|
||||
switchToFastPWM();
|
||||
} else {
|
||||
switchToSlowPWM();
|
||||
}
|
||||
}
|
||||
}
|
||||
// These are called by the HAL after the corresponding events from the system
|
||||
// timers.
|
||||
@@ -182,6 +177,14 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) {
|
||||
} else {
|
||||
HAL_TIM_PWM_Stop(&htim3, TIM_CHANNEL_1);
|
||||
}
|
||||
if (fastPWM != infastPWM) {
|
||||
if (fastPWM) {
|
||||
switchToFastPWM();
|
||||
} else {
|
||||
switchToSlowPWM();
|
||||
}
|
||||
}
|
||||
|
||||
} else if (htim->Instance == TIM1) {
|
||||
// STM uses this for internal functions as a counter for timeouts
|
||||
HAL_IncTick();
|
||||
@@ -279,4 +282,9 @@ bool isTipDisconnected() {
|
||||
return tipTemp > tipDisconnectedThres;
|
||||
}
|
||||
|
||||
void setStatusLED(const enum StatusLED state) {}
|
||||
void setStatusLED(const enum StatusLED state) {}
|
||||
uint8_t preStartChecks() { return 0; }
|
||||
uint64_t getDeviceID() {
|
||||
//
|
||||
return HAL_GetUIDw0() | ((uint64_t)HAL_GetUIDw1() << 32);
|
||||
}
|
||||
|
||||
52
source/Core/BSP/Miniware/CMakeLists.txt
Normal file
52
source/Core/BSP/Miniware/CMakeLists.txt
Normal file
@@ -0,0 +1,52 @@
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Vendor/CMSIS/Include)
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Vendor/CMSIS/Device)
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Inc)
|
||||
set(sources
|
||||
BSP.cpp
|
||||
flash.c
|
||||
fusb_user.cpp
|
||||
I2C_Wrapper.cpp
|
||||
IRQ.cpp
|
||||
port.c
|
||||
postRTOS.cpp
|
||||
Power.cpp
|
||||
preRTOS.cpp
|
||||
QC_GPIO.cpp
|
||||
Setup.cpp
|
||||
startup_stm32f103t8ux.S
|
||||
stm32f1xx_hal_msp.c
|
||||
stm32f1xx_hal_timebase_TIM.c
|
||||
stm32f1xx_it.c
|
||||
system_stm32f1xx.c
|
||||
ThermoModel.cpp
|
||||
# ST code
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_iwdg.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c
|
||||
)
|
||||
|
||||
|
||||
add_library(BSPImplementation ${sources})
|
||||
target_include_directories(BSPImplementation PUBLIC . ${CMAKE_CURRENT_SOURCE_DIR}/Vendor/CMSIS/Include ${CMAKE_CURRENT_SOURCE_DIR}/Vendor/CMSIS/Device ${CMAKE_CURRENT_SOURCE_DIR}/Vendor/STM32F1xx_HAL_Driver/Inc)
|
||||
target_compile_definitions (BSPImplementation PUBLIC "-D STM32F103T8Ux -D STM32F1 -D STM32 -D USE_HAL_DRIVER -D STM32F103xB -D USE_RTOS_SYSTICK -D GCC_ARMCM3 -D ARM_MATH_CM3 -D STM32F10X_MD")
|
||||
target_link_libraries(BSPImplementation PUBLIC brieflz BSP mainSource drivers)
|
||||
|
||||
|
||||
target_link_libraries(${elf_file} PUBLIC -Wl,--defsym=__FLASH_SIZE__=64k -Wl,--defsym=__BOOTLDR_SIZE__=0x4000)
|
||||
|
||||
set(DEVICE_DFU_ADDRESS 0x08004000)
|
||||
set(DEVICE_DFU_VID_PID 0x1209:0xDB42)
|
||||
@@ -56,7 +56,7 @@ bool FRToSI2C::Mem_Write(uint16_t DevAddress, uint16_t MemAddress, uint8_t *pDat
|
||||
bool FRToSI2C::Transmit(uint16_t DevAddress, uint8_t *pData, uint16_t Size) {
|
||||
if (!lock())
|
||||
return false;
|
||||
if (HAL_I2C_Master_Transmit_DMA(&hi2c1, DevAddress, pData, Size) != HAL_OK) {
|
||||
if (HAL_I2C_Master_Transmit_IT(&hi2c1, DevAddress, pData, Size) != HAL_OK) {
|
||||
I2C_Unstick();
|
||||
unlock();
|
||||
return false;
|
||||
|
||||
@@ -6,119 +6,87 @@
|
||||
*/
|
||||
|
||||
#ifndef BSP_MINIWARE_PINS_H_
|
||||
#define BSP_MINIWARE_PINS_H_
|
||||
#include "configuration.h"
|
||||
#define BSP_MINIWARE_PINS_H_
|
||||
#include "configuration.h"
|
||||
|
||||
#ifdef MODEL_TS100
|
||||
#ifdef MODEL_TS100
|
||||
|
||||
#define KEY_B_Pin GPIO_PIN_6
|
||||
#define KEY_B_GPIO_Port GPIOA
|
||||
#define TMP36_INPUT_Pin GPIO_PIN_7
|
||||
#define TMP36_INPUT_GPIO_Port GPIOA
|
||||
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_7
|
||||
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_7
|
||||
#define TIP_TEMP_Pin GPIO_PIN_0
|
||||
#define TIP_TEMP_GPIO_Port GPIOB
|
||||
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_8
|
||||
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_8
|
||||
#define VIN_Pin GPIO_PIN_1
|
||||
#define VIN_GPIO_Port GPIOB
|
||||
#define VIN_ADC1_CHANNEL ADC_CHANNEL_9
|
||||
#define VIN_ADC2_CHANNEL ADC_CHANNEL_9
|
||||
#define OLED_RESET_Pin GPIO_PIN_8
|
||||
#define OLED_RESET_GPIO_Port GPIOA
|
||||
#define KEY_A_Pin GPIO_PIN_9
|
||||
#define KEY_A_GPIO_Port GPIOA
|
||||
#define INT_Orientation_Pin GPIO_PIN_3
|
||||
#define INT_Orientation_GPIO_Port GPIOB
|
||||
#define PWM_Out_Pin GPIO_PIN_4
|
||||
#define PWM_Out_GPIO_Port GPIOB
|
||||
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
||||
#define PWM_Out_CCR
|
||||
#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
|
||||
#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 KEY_B_Pin GPIO_PIN_6
|
||||
#define KEY_B_GPIO_Port GPIOA
|
||||
#define TMP36_INPUT_Pin GPIO_PIN_7
|
||||
#define TMP36_INPUT_GPIO_Port GPIOA
|
||||
#define TMP36_ADC1_CHANNEL ADC_CHANNEL_7
|
||||
#define TMP36_ADC2_CHANNEL ADC_CHANNEL_7
|
||||
#define TIP_TEMP_Pin GPIO_PIN_0
|
||||
#define TIP_TEMP_GPIO_Port GPIOB
|
||||
#define TIP_TEMP_ADC1_CHANNEL ADC_CHANNEL_8
|
||||
#define TIP_TEMP_ADC2_CHANNEL ADC_CHANNEL_8
|
||||
#define VIN_Pin GPIO_PIN_1
|
||||
#define VIN_GPIO_Port GPIOB
|
||||
#define VIN_ADC1_CHANNEL ADC_CHANNEL_9
|
||||
#define VIN_ADC2_CHANNEL ADC_CHANNEL_9
|
||||
#define OLED_RESET_Pin GPIO_PIN_8
|
||||
#define OLED_RESET_GPIO_Port GPIOA
|
||||
#define KEY_A_Pin GPIO_PIN_9
|
||||
#define KEY_A_GPIO_Port GPIOA
|
||||
#define INT_Orientation_Pin GPIO_PIN_3
|
||||
#define INT_Orientation_GPIO_Port GPIOB
|
||||
#define PWM_Out_Pin GPIO_PIN_4
|
||||
#define PWM_Out_GPIO_Port GPIOB
|
||||
#define PWM_Out_CHANNEL TIM_CHANNEL_1
|
||||
#define PWM_Out_CCR
|
||||
#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
|
||||
#endif
|
||||
|
||||
#define VIN_Pin GPIO_PIN_2
|
||||
#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
|
||||
#if defined(MODEL_TS80) + defined(MODEL_TS80P) > 0
|
||||
// TS80 & TS80P 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
|
||||
|
||||
#endif
|
||||
#ifdef MODEL_TS80P
|
||||
// TS80P 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
|
||||
#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 VIN_Pin GPIO_PIN_2
|
||||
#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
|
||||
|
||||
#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_ */
|
||||
|
||||
@@ -22,11 +22,7 @@ void power_check() {
|
||||
}
|
||||
|
||||
bool getIsPoweredByDCIN() {
|
||||
#ifdef MODEL_TS80
|
||||
return false;
|
||||
#endif
|
||||
|
||||
#ifdef MODEL_TS80P
|
||||
#if defined(MODEL_TS80) + defined(MODEL_TS80P) > 0
|
||||
return false;
|
||||
#endif
|
||||
|
||||
|
||||
@@ -310,6 +310,9 @@ void HAL_ResumeTick(void);
|
||||
uint32_t HAL_GetHalVersion(void);
|
||||
uint32_t HAL_GetREVID(void);
|
||||
uint32_t HAL_GetDEVID(void);
|
||||
uint32_t HAL_GetUIDw0(void);
|
||||
uint32_t HAL_GetUIDw1(void);
|
||||
uint32_t HAL_GetUIDw2(void);
|
||||
void HAL_DBGMCU_EnableDBGSleepMode(void);
|
||||
void HAL_DBGMCU_DisableDBGSleepMode(void);
|
||||
void HAL_DBGMCU_EnableDBGStopMode(void);
|
||||
|
||||
@@ -513,6 +513,24 @@ void HAL_GetUID(uint32_t *UID) {
|
||||
UID[2] = (uint32_t)(READ_REG(*((uint32_t *)(UID_BASE + 8U))));
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Returns first word of the unique device identifier (UID based on 96 bits)
|
||||
* @retval Device identifier
|
||||
*/
|
||||
uint32_t HAL_GetUIDw0(void) { return (READ_REG(*((uint32_t *)UID_BASE))); }
|
||||
|
||||
/**
|
||||
* @brief Returns second word of the unique device identifier (UID based on 96 bits)
|
||||
* @retval Device identifier
|
||||
*/
|
||||
uint32_t HAL_GetUIDw1(void) { return (READ_REG(*((uint32_t *)(UID_BASE + 4U)))); }
|
||||
|
||||
/**
|
||||
* @brief Returns third word of the unique device identifier (UID based on 96 bits)
|
||||
* @retval Device identifier
|
||||
*/
|
||||
uint32_t HAL_GetUIDw2(void) { return (READ_REG(*((uint32_t *)(UID_BASE + 8U)))); }
|
||||
|
||||
/**
|
||||
* @}
|
||||
*/
|
||||
|
||||
@@ -1321,10 +1321,10 @@ HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel) {
|
||||
/* Enable the Capture compare channel */
|
||||
TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE);
|
||||
|
||||
if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) {
|
||||
/* Enable the main output */
|
||||
__HAL_TIM_MOE_ENABLE(htim);
|
||||
}
|
||||
// if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) {
|
||||
// /* Enable the main output */
|
||||
// __HAL_TIM_MOE_ENABLE(htim);
|
||||
// }
|
||||
|
||||
/* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */
|
||||
if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) {
|
||||
@@ -3450,39 +3450,6 @@ void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) {
|
||||
htim->PeriodElapsedCallback(htim);
|
||||
#else
|
||||
HAL_TIM_PeriodElapsedCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
}
|
||||
/* TIM Break input event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_BREAK) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_BREAK) != RESET) {
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_IT_BREAK);
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->BreakCallback(htim);
|
||||
#else
|
||||
HAL_TIMEx_BreakCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
}
|
||||
/* TIM Trigger detection event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_TRIGGER) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_TRIGGER) != RESET) {
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_IT_TRIGGER);
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->TriggerCallback(htim);
|
||||
#else
|
||||
HAL_TIM_TriggerCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
}
|
||||
/* TIM commutation event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_COM) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_COM) != RESET) {
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_FLAG_COM);
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->CommutationCallback(htim);
|
||||
#else
|
||||
HAL_TIMEx_CommutCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,223 +1,208 @@
|
||||
#ifndef CONFIGURATION_H_
|
||||
#define CONFIGURATION_H_
|
||||
#include "Settings.h"
|
||||
#include <stdint.h>
|
||||
/**
|
||||
* Configuration.h
|
||||
* Define here your default pre settings for TS80(P) or TS100
|
||||
*
|
||||
*/
|
||||
#define CONFIGURATION_H_
|
||||
#include "Settings.h"
|
||||
#include <stdint.h>
|
||||
/**
|
||||
* Configuration.h
|
||||
* Define here your default pre settings for TS80(P) or TS100
|
||||
*
|
||||
*/
|
||||
|
||||
//===========================================================================
|
||||
//============================= Default Settings ============================
|
||||
//===========================================================================
|
||||
/**
|
||||
* Default soldering temp is 320.0 C
|
||||
* Temperature the iron sleeps at - default 150.0 C
|
||||
*/
|
||||
//===========================================================================
|
||||
//============================= Default Settings ============================
|
||||
//===========================================================================
|
||||
/**
|
||||
* Default soldering temp is 320.0 C
|
||||
* Temperature the iron sleeps at - default 150.0 C
|
||||
*/
|
||||
|
||||
#define SLEEP_TEMP 150 // Default sleep temperature
|
||||
#define BOOST_TEMP 420 // Default boost temp.
|
||||
#define BOOST_MODE_ENABLED 1 // 0: Disable 1: Enable
|
||||
#define SLEEP_TEMP 150 // Default sleep temperature
|
||||
#define BOOST_TEMP 420 // Default boost temp.
|
||||
#define BOOST_MODE_ENABLED 1 // 0: Disable 1: Enable
|
||||
|
||||
/**
|
||||
* Blink the temperature on the cooling screen when its > 50C
|
||||
*/
|
||||
#define COOLING_TEMP_BLINK 0 // 0: Disable 1: Enable
|
||||
/**
|
||||
* Blink the temperature on the cooling screen when its > 50C
|
||||
*/
|
||||
#define COOLING_TEMP_BLINK 0 // 0: Disable 1: Enable
|
||||
|
||||
/**
|
||||
* How many seconds/minutes we wait until going to sleep/shutdown.
|
||||
* Values -> SLEEP_TIME * 10; i.e. 5*10 = 50 Seconds!
|
||||
*/
|
||||
#define SLEEP_TIME 5 // x10 Seconds
|
||||
#define SHUTDOWN_TIME 10 // Minutes
|
||||
/**
|
||||
* How many seconds/minutes we wait until going to sleep/shutdown.
|
||||
* Values -> SLEEP_TIME * 10; i.e. 5*10 = 50 Seconds!
|
||||
*/
|
||||
#define SLEEP_TIME 5 // x10 Seconds
|
||||
#define SHUTDOWN_TIME 10 // Minutes
|
||||
|
||||
/**
|
||||
* Auto start off for safety.
|
||||
* Pissible values are:
|
||||
* 0 - none
|
||||
* 1 - Soldering Temperature
|
||||
* 2 - Sleep Temperature
|
||||
* 3 - Sleep Off Temperature
|
||||
*/
|
||||
#define AUTO_START_MODE 0 // Default to none
|
||||
/**
|
||||
* Auto start off for safety.
|
||||
* Pissible values are:
|
||||
* 0 - none
|
||||
* 1 - Soldering Temperature
|
||||
* 2 - Sleep Temperature
|
||||
* 3 - Sleep Off Temperature
|
||||
*/
|
||||
#define AUTO_START_MODE 0 // Default to none
|
||||
|
||||
/**
|
||||
* Locking Mode
|
||||
* When in soldering mode a long press on both keys toggle the lock of the buttons
|
||||
* Possible values are:
|
||||
* 0 - Desactivated
|
||||
* 1 - Lock except boost
|
||||
* 2 - Full lock
|
||||
*/
|
||||
#define LOCKING_MODE 0 // Default to desactivated for safety
|
||||
/**
|
||||
* Locking Mode
|
||||
* When in soldering mode a long press on both keys toggle the lock of the buttons
|
||||
* Possible values are:
|
||||
* 0 - Desactivated
|
||||
* 1 - Lock except boost
|
||||
* 2 - Full lock
|
||||
*/
|
||||
#define LOCKING_MODE 0 // Default to desactivated for safety
|
||||
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#define ORIENTATION_MODE 0 // 0: Right 1:Left 2:Automatic - Default right
|
||||
#define REVERSE_BUTTON_TEMP_CHANGE 0 // 0:Default 1:Reverse - Reverse the plus and minus button assigment for temperature change
|
||||
/**
|
||||
* OLED Orientation
|
||||
*
|
||||
*/
|
||||
#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
|
||||
|
||||
/**
|
||||
* Temp change settings
|
||||
*/
|
||||
#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_SHORT_STEP_MAX 50 // Temp change short step MAX value
|
||||
#define TEMP_CHANGE_LONG_STEP_MAX 90 // Temp change long step MAX value
|
||||
/**
|
||||
* Temp change settings
|
||||
*/
|
||||
#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_SHORT_STEP_MAX 50 // Temp change short step MAX value
|
||||
#define TEMP_CHANGE_LONG_STEP_MAX 90 // Temp change long step MAX value
|
||||
|
||||
/* Power pulse for keeping power banks awake*/
|
||||
#define POWER_PULSE_INCREMENT 1
|
||||
#define POWER_PULSE_MAX 100 // x10 max watts
|
||||
#define POWER_PULSE_WAIT_MAX 9 // 9*2.5s = 22.5 seconds
|
||||
#define POWER_PULSE_DURATION_MAX 9 // 9*250ms = 2.25 seconds
|
||||
/* Power pulse for keeping power banks awake*/
|
||||
#define POWER_PULSE_INCREMENT 1
|
||||
#define POWER_PULSE_MAX 100 // x10 max watts
|
||||
#define POWER_PULSE_WAIT_MAX 9 // 9*2.5s = 22.5 seconds
|
||||
#define POWER_PULSE_DURATION_MAX 9 // 9*250ms = 2.25 seconds
|
||||
|
||||
#ifdef MODEL_TS100
|
||||
#define POWER_PULSE_DEFAULT 0
|
||||
#else
|
||||
#define POWER_PULSE_DEFAULT 5
|
||||
#endif
|
||||
#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
|
||||
#ifdef MODEL_TS100
|
||||
#define POWER_PULSE_DEFAULT 0
|
||||
#else
|
||||
#define POWER_PULSE_DEFAULT 5
|
||||
#endif
|
||||
#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
|
||||
|
||||
/**
|
||||
* OLED Orientation Sensitivity on Automatic mode!
|
||||
* Motion Sensitivity <0=Off 1=Least Sensitive 9=Most Sensitive>
|
||||
*/
|
||||
#define SENSITIVITY 7 // Default 7
|
||||
/**
|
||||
* OLED Orientation Sensitivity on Automatic mode!
|
||||
* Motion Sensitivity <0=Off 1=Least Sensitive 9=Most Sensitive>
|
||||
*/
|
||||
#define SENSITIVITY 7 // Default 7
|
||||
|
||||
/**
|
||||
* Detailed soldering screen
|
||||
* Detailed idle screen (off for first time users)
|
||||
*/
|
||||
#define DETAILED_SOLDERING 0 // 0: Disable 1: Enable - Default 0
|
||||
#define DETAILED_IDLE 0 // 0: Disable 1: Enable - Default 0
|
||||
/**
|
||||
* Detailed soldering screen
|
||||
* Detailed idle screen (off for first time users)
|
||||
*/
|
||||
#define DETAILED_SOLDERING 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_TEMP_C 20
|
||||
#define THERMAL_RUNAWAY_TIME_SEC 20
|
||||
#define THERMAL_RUNAWAY_TEMP_C 10
|
||||
|
||||
#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 TEMPERATURE_INF 0 // default to 0
|
||||
#define DESCRIPTION_SCROLL_SPEED 0 // 0: Slow 1: Fast - default to slow
|
||||
#define ANIMATION_LOOP 1 // 0: off 1: on
|
||||
#define ANIMATION_SPEED settingOffSpeed_t::MEDIUM
|
||||
#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 TEMPERATURE_INF 0 // default to 0
|
||||
#define DESCRIPTION_SCROLL_SPEED 0 // 0: Slow 1: Fast - default to slow
|
||||
#define ANIMATION_LOOP 1 // 0: off 1: on
|
||||
#define ANIMATION_SPEED settingOffSpeed_t::MEDIUM
|
||||
|
||||
#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_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_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_Rin_TS80 2000 // 2.0 Kilo-ohms -> From schematic, R3
|
||||
#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_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:
|
||||
// Vin_max = (3.3*(r1+r2))/(r2)
|
||||
// vdiv = (32768*4)/(vin_max*10)
|
||||
// Deriving the Voltage div:
|
||||
// Vin_max = (3.3*(r1+r2))/(r2)
|
||||
// vdiv = (32768*4)/(vin_max*10)
|
||||
|
||||
#if defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) > 1
|
||||
#error "Multiple models defined!"
|
||||
#elif defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) == 0
|
||||
#error "No model defined!"
|
||||
#if defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) > 1
|
||||
#error "Multiple models defined!"
|
||||
#elif defined(MODEL_TS100) + defined(MODEL_TS80) + defined(MODEL_TS80P) == 0
|
||||
#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
|
||||
|
||||
#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 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 ACCEL_MMA
|
||||
#define POW_PD 0
|
||||
#define ACCEL_LIS
|
||||
#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 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 ACCEL_LIS
|
||||
#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 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 ACCEL_LIS
|
||||
#define ACCEL_MSA
|
||||
#define POW_PD 1
|
||||
#define POW_QC 1
|
||||
#define TEMP_NTC
|
||||
#define I2C_SOFT
|
||||
#define LIS_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))
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user