Compare commits

...

177 Commits

Author SHA1 Message Date
joBr99
ebafe52f39 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-04-03 07:35:49 +00:00
Johannes
265c95845f Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-03 09:35:25 +02:00
Johannes
218148bcfb change msg format media page 2022-04-03 09:35:14 +02:00
joBr99
d46a4ea46f fixed navigation on subpages for cardThermo cardMedia and cardAlarm (add nextion2text) 2022-04-03 07:18:00 +00:00
Johannes
767ed78c40 fixed navigation on subpages for cardThermo cardMedia and cardAlarm 2022-04-03 09:17:33 +02:00
Johannes
89669f68f0 Update README.md 2022-04-02 23:27:36 +02:00
Johannes
18805ccae2 Update README.md 2022-04-02 22:50:32 +02:00
Johannes
c4d920b3b7 Update README.md 2022-04-02 22:50:00 +02:00
Johannes
3ad0408606 fixed page nav after exiting hidden page 2022-04-02 22:18:24 +02:00
Johannes
57039fd31e reg callbacks for hidden page items 2022-04-02 22:01:22 +02:00
Johannes
fb7561df10 reg callbacks for hidden page items 2022-04-02 22:00:08 +02:00
Johannes
cf1e3dfd6d fix external update for hidden pages 2022-04-02 21:49:01 +02:00
Johannes
063a6d16f8 upd pic 2022-04-02 21:31:06 +02:00
Johannes
5fda051e37 Update README.md 2022-04-02 21:29:20 +02:00
Johannes
494a122021 Update README.md 2022-04-02 21:05:47 +02:00
Johannes
f8a4d8e82b Update README.md 2022-04-02 21:02:51 +02:00
Johannes
de5a38b28a Update README.md 2022-04-02 20:59:00 +02:00
Johannes
35fca0f0c4 Update README.md 2022-04-02 20:58:30 +02:00
Johannes
138e8ce809 add some screens from us portrait version 2022-04-02 20:57:42 +02:00
Johannes
bdcbbbc256 fix screensaver navigation 2022-04-02 20:28:22 +02:00
Johannes
131bbc8798 fix sleep 2022-04-02 20:23:02 +02:00
Johannes
e24b337add Update updater.py 2022-04-02 20:15:03 +02:00
Johannes
0ba380a5a3 Update nspanel-lovelace-ui.py 2022-04-02 20:11:58 +02:00
Johannes
644efbaa76 added example for hidden page and navigate 2022-04-02 20:08:10 +02:00
Johannes
83c66d053e Merge pull request #114 from joBr99/newConfigFormat
New config format
2022-04-02 20:07:24 +02:00
Johannes
f4c870c51c fix alert 2022-04-02 20:00:03 +02:00
joBr99
cf756401ca sync changes and bump version (add nextion2text) 2022-04-02 17:52:31 +00:00
Johannes
cb8ad94e84 sync changes and bump version 2022-04-02 19:52:10 +02:00
Johannes
0fe062bba1 fixed nav buttons 2022-04-02 19:48:22 +02:00
Johannes
338f12cb18 fix sleepbrightness 2022-04-02 19:46:34 +02:00
Johannes
a3033a0e6b alternaitve layout screensaver 2022-04-02 19:43:09 +02:00
Johannes
9ace31db1f update docs 2022-04-02 17:40:10 +02:00
Johannes
4c6f9cdfd6 implement subpages 2022-04-02 17:34:34 +02:00
Johannes
f15e508626 upd docs 2022-04-02 16:54:57 +02:00
Johannes
a58cafc124 new config format 2022-04-02 16:45:28 +02:00
Johannes
ac01a75761 started on new config format 2022-04-02 10:54:48 +02:00
Johannes
9fe9f6b5cc removed fahrenheit conversion 2022-04-01 20:53:36 +02:00
Johannes
64b3f45705 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 20:34:23 +02:00
Johannes
ffd4573d6a changed msg format on update page 2022-04-01 20:34:17 +02:00
Johannes
72bd3f91d4 Update nspanel-lovelace-ui.py 2022-04-01 20:23:40 +02:00
joBr99
d4f78c0293 updated us versions (add nextion2text) 2022-04-01 18:14:34 +00:00
Johannes
1272732bb5 updated us versions 2022-04-01 20:14:10 +02:00
Johannes
351bd7fdfd Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 19:45:29 +02:00
Johannes
9e7ff10e71 fix some messages 2022-04-01 19:45:24 +02:00
joBr99
9f1014eb5f Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-04-01 17:33:35 +00:00
Johannes
74e3c95b9a Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 19:33:06 +02:00
Johannes
8518fcfcf4 fix popup light 2022-04-01 19:33:00 +02:00
joBr99
971db97d9e fixed popup pages (add nextion2text) 2022-04-01 17:26:00 +00:00
Johannes
6cb7ad8f3f fixed popup pages 2022-04-01 19:25:37 +02:00
Johannes
98dfab74ef round result 2022-04-01 19:08:55 +02:00
Johannes
73f3ffd586 fix temp 2022-04-01 19:03:09 +02:00
Johannes
9e5f41f2b2 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 18:56:09 +02:00
Johannes
a59c0e3ddc implemented conversion of temperature 2022-04-01 18:56:03 +02:00
joBr99
744adce373 removed additional delimiter for weather (add nextion2text) 2022-04-01 15:25:02 +00:00
Johannes
20a289eb52 removed additional delimiter for weather 2022-04-01 17:24:40 +02:00
joBr99
2dba199f50 change default delimiter from , to ~ (add nextion2text) 2022-04-01 14:58:13 +00:00
Johannes
7f3a0d257e change default delimiter from , to ~ 2022-04-01 16:57:51 +02:00
Johannes
266caeb3ae added known-good diff 2022-04-01 16:18:01 +02:00
joBr99
77b04f4260 Merge pull request #107 from jmbinette/main (add nextion2text) 2022-04-01 04:54:14 +00:00
Johannes
3203b32936 Merge pull request #107 from jmbinette/main
Screensaver presentation (Portrait)
2022-04-01 06:53:54 +02:00
jmbinette
613dc4f471 Fixed Screensaver for better presentation (add nextion2text) 2022-04-01 01:57:14 +00:00
jmbinette
2262b9a03f Fixed Screensaver for better presentation 2022-03-31 21:56:46 -04:00
jmbinette
b5b3f3d9ae Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) (add nextion2text) 2022-04-01 00:12:30 +00:00
joBr99
e7ec0541bb Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 22:36:11 +00:00
Johannes
a36943bc33 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 00:35:50 +02:00
Johannes
74aeb48b85 decrease memory usage on cardEntities page 2022-04-01 00:35:46 +02:00
joBr99
a5ff50595b Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 22:28:27 +00:00
Johannes
c4922eb4b6 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 00:28:06 +02:00
Johannes
ca907c8e6a serial cardthermo 2022-04-01 00:27:54 +02:00
joBr99
34494ec0da Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 22:17:45 +00:00
Johannes
fdea6aa842 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-04-01 00:17:19 +02:00
Johannes
78d353c464 import new screensaver page 2022-04-01 00:17:13 +02:00
joBr99
d543a186ad sync media page serial code (add nextion2text) 2022-03-31 22:04:17 +00:00
Johannes
9023265547 sync media page serial code 2022-04-01 00:03:54 +02:00
joBr99
516f51b803 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 21:51:27 +00:00
Johannes
22d0a935e1 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 23:51:04 +02:00
Johannes
865edc0e4d increase max date string length 2022-03-31 23:50:55 +02:00
joBr99
ef024faa43 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 21:43:27 +00:00
Johannes
3aaf2582ea Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 23:43:04 +02:00
Johannes
36c931a89b sync some changes 2022-03-31 23:42:55 +02:00
Johannes
37056983d8 Delete diff-known-good-changes.txt 2022-03-31 23:38:46 +02:00
joBr99
5d867d7d4c Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 21:37:35 +00:00
Johannes
dc1afd90aa Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 23:37:11 +02:00
Johannes
cd8439f766 add serial code entities 2022-03-31 23:37:05 +02:00
joBr99
e0e7a853f2 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 21:34:55 +00:00
Johannes
0d683ddcd5 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 23:34:29 +02:00
Johannes
35b05c26cb sync some chanegs 2022-03-31 23:34:22 +02:00
joBr99
9c42ed135c Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 21:30:20 +00:00
Johannes
982f281ce5 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 23:29:57 +02:00
Johannes
b5879845fd sync some changes 2022-03-31 23:29:43 +02:00
Johannes
70e533e16b Update README.md 2022-03-31 23:17:19 +02:00
joBr99
0ac26e275f add alternative layout for screensaver (add nextion2text) 2022-03-31 20:31:53 +00:00
Johannes
f9cb4c03b6 add alternative layout for screensaver 2022-03-31 22:31:21 +02:00
joBr99
c7b0bc7d82 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 18:57:31 +00:00
Johannes
92ee3a18b8 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 20:57:02 +02:00
Johannes
b13287754f fix cardalarm 2022-03-31 20:56:53 +02:00
joBr99
0d0c9edced Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 18:53:37 +00:00
Johannes
c17b95dca7 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 20:53:14 +02:00
Johannes
979c2587bb sync some changes 2022-03-31 20:53:07 +02:00
joBr99
b24405e579 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 18:39:22 +00:00
Johannes
7c3b0da36e Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 20:38:57 +02:00
Johannes
b27f3bd078 implemented bUp 2022-03-31 20:38:49 +02:00
joBr99
8c0f5db6ec Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 18:35:25 +00:00
Johannes
9b42681588 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 20:35:03 +02:00
Johannes
324b2f2165 fix dstTemp 2022-03-31 20:34:50 +02:00
joBr99
26bacb26c1 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 18:31:21 +00:00
Johannes
d151c58057 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 20:30:55 +02:00
Johannes
71dcebf6d2 hide num on alarm page on disable 2022-03-31 20:30:49 +02:00
joBr99
708e5515d1 add navigation on alarm and thermo page (add nextion2text) 2022-03-31 18:20:57 +00:00
Johannes
d74ccfcd64 add navigation on alarm and thermo page 2022-03-31 20:20:27 +02:00
joBr99
067bad12e3 implemented navigation on cardEntities Grid and Thermo (add nextion2text) 2022-03-31 14:19:07 +00:00
Johannes
5ea5c76b57 implemented navigation on cardEntities Grid and Thermo 2022-03-31 16:18:44 +02:00
Johannes
4f4d12759b upd code gen 2022-03-31 14:22:27 +02:00
Johannes
393bcc243b Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 12:58:52 +02:00
Johannes
d0d690e748 bump vers 2022-03-31 12:58:45 +02:00
joBr99
7bd3c263cf Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 10:58:09 +00:00
Johannes
22563d1cb4 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 12:57:42 +02:00
Johannes
52364e05a7 add us-l 2022-03-31 12:57:37 +02:00
Johannes
ab51c44c32 sync diff 2022-03-31 12:50:34 +02:00
joBr99
d908cb7d96 fixed screensaver pagetype (add nextion2text) 2022-03-31 10:46:03 +00:00
Johannes
39c1aa6773 fixed screensaver pagetype 2022-03-31 12:45:35 +02:00
Johannes
037fc104df Update pages.py 2022-03-31 09:48:30 +02:00
Johannes
06464404c4 Update controller.py 2022-03-31 09:39:02 +02:00
joBr99
f3933ab0e2 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-31 07:32:24 +00:00
Johannes
210efd1384 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-31 09:31:55 +02:00
Johannes
13073d2b70 bump to 24 for next release 2022-03-31 09:31:46 +02:00
joBr99
2f43430b2f . (add nextion2text) 2022-03-31 07:13:42 +00:00
Johannes
7ba6fcbbc9 . 2022-03-31 09:13:19 +02:00
joBr99
9ca1e2f717 Update cardEntities.txt (add nextion2text) 2022-03-31 06:59:06 +00:00
Johannes
da7e3c39c7 Update cardEntities.txt 2022-03-31 08:58:49 +02:00
joBr99
37a7a8db4f Update nextion2text.yml (add nextion2text) 2022-03-31 06:52:56 +00:00
Johannes
7773eedd45 Update nextion2text.yml 2022-03-31 08:52:39 +02:00
Johannes
9d82d849c5 Update cardEntities.txt 2022-03-31 08:49:28 +02:00
joBr99
9fdf8635a6 Update nextion2text.yml (add nextion2text) 2022-03-31 06:42:30 +00:00
Johannes
cddc3cf7a0 Update nextion2text.yml 2022-03-31 08:42:11 +02:00
joBr99
2ce12d0c71 ignore parts of cardEntities in diff (add nextion2text) 2022-03-31 06:34:28 +00:00
Johannes
aac014bb09 ignore parts of cardEntities in diff 2022-03-31 08:34:05 +02:00
joBr99
b3cc89f12a Merge pull request #103 from jmbinette/main (add nextion2text) 2022-03-31 06:31:08 +00:00
Johannes
cbf49483eb Merge pull request #103 from jmbinette/main
Updated HMI and TFT following EU mod (Daily update)
2022-03-31 08:30:50 +02:00
Johannes
4c6b3d2dda remove __pycache__ 2022-03-31 08:29:46 +02:00
jmbinette
24e8d6a597 bDown5 and bDown6 typo in Entities (add nextion2text) 2022-03-31 03:33:55 +00:00
jmbinette
c7a3965db4 bDown5 and bDown6 typo in Entities 2022-03-30 23:33:33 -04:00
jmbinette
8e53463d57 Commit (add nextion2text) 2022-03-31 03:13:55 +00:00
jmbinette
6acbe3b088 Commit 2022-03-30 23:13:30 -04:00
jmbinette
12e45e1a3e fix daily date update (add nextion2text) 2022-03-31 01:56:46 +00:00
Johannes
b4075826f3 fix daily date update 2022-03-31 00:28:42 +02:00
Johannes
147b99d254 weather 2022-03-31 00:28:27 +02:00
Johannes
88115cf04d Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-30 23:51:14 +02:00
Johannes
f92afe7bda weather update 2022-03-30 23:51:07 +02:00
joBr99
aa83e955f0 send screensaver on sleepReached (add nextion2text) 2022-03-30 21:36:50 +00:00
Johannes
10b0d75a15 send screensaver on sleepReached 2022-03-30 23:36:20 +02:00
Johannes
19aec4bb55 rename sleepReached 2022-03-30 23:30:11 +02:00
Johannes
b22f5877fd remove screensaver open event 2022-03-30 23:25:24 +02:00
Johannes
3ec432eda1 Merge pull request #101 from gerard33/patch-2
Update weather part of screensaver
2022-03-30 23:20:53 +02:00
Gerard
71804b934d Update apps.yaml 2022-03-30 23:09:02 +02:00
Gerard
fa37924f23 Add weather override examples 2022-03-30 23:08:10 +02:00
Gerard
175f4cb5e4 Update pages.py 2022-03-30 23:05:51 +02:00
joBr99
30b0c5d151 moved time and date to pageicons (add nextion2text) 2022-03-30 20:32:27 +00:00
Johannes
3f3f438a31 moved time and date to pageicons 2022-03-30 22:32:03 +02:00
Johannes
11a9be707b Update README.md 2022-03-30 22:20:32 +02:00
joBr99
3321b993c3 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-30 20:07:59 +00:00
Johannes
75078020f7 Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-30 22:07:31 +02:00
Johannes
5009afb9d5 add action for sleepTimeout 2022-03-30 22:07:24 +02:00
Johannes
d3dd890582 moved entering screensaver to event 2022-03-30 22:01:54 +02:00
joBr99
42164508db added fireplace icon (add nextion2text) 2022-03-30 16:55:43 +00:00
Johannes
2996a7e67c added fireplace icon 2022-03-30 18:55:19 +02:00
joBr99
7b7c1b59fa Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui (add nextion2text) 2022-03-30 16:28:21 +00:00
Johannes
314b4c58ea Merge branch 'main' of https://github.com/joBr99/nspanel-lovelace-ui 2022-03-30 18:27:51 +02:00
Johannes
d67d53f7b1 added some more icons 2022-03-30 18:27:44 +02:00
Johannes
e508e9ad1a Update README.md 2022-03-30 17:36:16 +02:00
Johannes
da85a76a86 Update README.md 2022-03-30 17:35:29 +02:00
joBr99
b9dd24889e added home-export-outline and import icon (add nextion2text) 2022-03-30 15:03:47 +00:00
Johannes
4ee4d0f800 added home-export-outline and import icon 2022-03-30 17:03:21 +02:00
Johannes
df94b33e42 add note for ioBroker users 2022-03-30 14:52:52 +02:00
Johannes
5707fb7085 Delete CODEOWNERS 2022-03-30 14:07:46 +02:00
Johannes
90ab2ebef8 Update README.md 2022-03-30 14:04:50 +02:00
Johannes
2e46fc82d9 Create CODEOWNERS 2022-03-30 13:52:18 +02:00
105 changed files with 7416 additions and 4353 deletions

View File

@@ -5,6 +5,7 @@ on:
paths: paths:
- HMI/nspanel.HMI - HMI/nspanel.HMI
- HMI/US/portrait/nspanel_US_P.HMI - HMI/US/portrait/nspanel_US_P.HMI
- HMI/US/portrait/diff-ignore/cardEntities.txt
- HMI/US/landscape/nspanel_US_L.HMI - HMI/US/landscape/nspanel_US_L.HMI
- .github/workflows/nextion2text.yml - .github/workflows/nextion2text.yml
push: push:
@@ -13,6 +14,7 @@ on:
paths: paths:
- HMI/nspanel.HMI - HMI/nspanel.HMI
- HMI/US/portrait/nspanel_US_P.HMI - HMI/US/portrait/nspanel_US_P.HMI
- HMI/US/portrait/diff-ignore/cardEntities.txt
- HMI/US/landscape/nspanel_US_L.HMI - HMI/US/landscape/nspanel_US_L.HMI
- .github/workflows/nextion2text.yml - .github/workflows/nextion2text.yml

1
.gitignore vendored
View File

@@ -1,2 +1,3 @@
__pycache__/
# don't add nextion2text # don't add nextion2text
HMI/Nextion2Text.py HMI/Nextion2Text.py

View File

@@ -1,7 +1,7 @@
# NSPanel Lovelance UI # NSPanel Lovelance UI
The general idea is that the Nextion Display cycles though a page counter and the esp32 tells the display what to do. The general idea is that the Nextion Display cycles though a page counter and the esp32 tells the display what to do.
If you are changeing the page the nextion display will send and event to the esp32 and it has to answer with the messages, that will update the current page with it's desired components. This enables easy changes, without touching the HMI Project. If you are changeing the page the nextion display will send and event to the esp32 and it has to answer with the messages~ that will update the current page with it's desired components. This enables easy changes~ without touching the HMI Project.
# Message Flow # Message Flow
@@ -25,7 +25,7 @@ This protocol does not try to implement broken JSON Commands with a specified ty
Instead the commands are plain text commands with parameters. Instead the commands are plain text commands with parameters.
## Example for valid Message ## Example for valid Message
This message has to be generated for the Message "1337" (1337 is not a valid command, this is just an example) This message has to be generated for the Message "1337" (1337 is not a valid command~ this is just an example)
``` ```
55 BB 04 00 31 33 33 37 5F 5B 55 BB 04 00 31 33 33 37 5F 5B
``` ```
@@ -39,173 +39,176 @@ wake screen:
set brightness of screensaver: set brightness of screensaver:
`dimmode,0 - (screen off)` `dimmode~0 - (screen off)`
`dimmode,100 - (screen on with full brightness)` `dimmode~100 - (screen on with full brightness)`
set current time: set current time:
`time,22 : 26` `time~22 : 26`
set current date: set current date:
`date,?Di 24. Februar` `date~Di 24. Februar`
set screensaver timeout (set time in sec, max 65): set screensaver timeout (set time in sec~ max 65):
`timeout,15 - timeout after 15 seconds` `timeout~15 - timeout after 15 seconds`
`timeout,0 - disable screensaver` `timeout~0 - disable screensaver`
change the page type: change the page type:
`pageType,pageStartup` `pageType~pageStartup`
`pageType,cardEntities` `pageType~cardEntities`
`pageType,cardThermo` `pageType~cardThermo`
`pageType,cardMedia` `pageType~cardMedia`
`pageType,popupLight,Schreibtischlampe,light.schreibtischlampe` `pageType~popupLight~Schreibtischlampe~light.schreibtischlampe`
`pageType,popupNotify` `pageType~popupNotify`
`pageType,screensaver` `pageType~screensaver`
### screensaver page ### screensaver page
`weatherUpdate,? tMainIcon? tMainText? tMRIcon? tMR? tForecast1? tF1Icon? tForecast1Val? tForecast2? tF2Icon? tForecast2Val?tForecast3? tF3Icon? tForecast3Val?tForecast4? tF4Icon? tForecast4Val` `weatherUpdate~tMainIcon~tMainText~tForecast1~tF1Icon~tForecast1Val~tForecast2~tF2Icon~tForecast2Val~tForecast3~tF3Icon~tForecast3Val~tForecast4~tF4Icon~tForecast4Val~optionalLayoutIcon~optionalLayoutText`
### cardEntities Page ### cardEntities Page
The following message can be used to update the content on the cardEntities Page The following message can be used to update the content on the cardEntities Page
`entityUpd,heading,navigation,[,*type*,*internalNameEntity*,*iconId*,*iconColor*,*displayNameEntity*,*optionalValue*]x4` `entityUpd~heading~navigation~[~*type*~*internalNameEntity*~*iconId*~*iconColor*~*displayNameEntity*~*optionalValue*]x4`
`,light,light.entityName,1,17299,Light1,0` `~light~light.entityName~1~17299~Light1~0`
`,shutter,cover.entityName,0,17299,Shutter2,` `~shutter~cover.entityName~0~17299~Shutter2~`
`,delete,,,,,` `~delete~~~~~`
`,text,sensor.entityName,3,17299,Temperature,content` `~text~sensor.entityName~3~17299~Temperature~content`
`,button,button.entityName,3,17299,bt-name,bt-text` `~button~button.entityName~3~17299~bt-name~bt-text`
`,switch,switch.entityName,4,17299,Switch1,0` `~switch~switch.entityName~4~17299~Switch1~0`
### popupLight Page ### popupLight Page
`entityUpdateDetail,*iconId*,*iconColor*,*buttonState*,*sliderBrightnessPos*,*sliderColorTempPos*,*colorMode*` `entityUpdateDetail~*iconId*~*iconColor*~*buttonState*~*sliderBrightnessPos*~*sliderColorTempPos*~*colorMode*`
`entityUpdateDetail,1,17299,1,100,78,enable` `entityUpdateDetail~1~17299~1~100~78~enable`
`entityUpdateDetail,1,17299,1,100,disable` `entityUpdateDetail~1~17299~1~100~disable`
### popupShutter Page ### popupShutter Page
`entityUpdateDetail,*ignored*,*sliderPos*` `entityUpdateDetail~*ignored*~*sliderPos*`
`entityUpdateDetail,1,77` `entityUpdateDetail~1~77`
### popupNotify Page ### popupNotify Page
`entityUpdateDetail,*internalName*,*tHeading*,*tHeadingColor*,*b1*,*tB1Color*,*b2*,*tB2Color*,*tText*,*tTextColor*,*sleepTimeout*` `entityUpdateDetail~*internalName*~*tHeading*~*tHeadingColor*~*b1*~*tB1Color*~*b2*~*tB2Color*~*tText*~*tTextColor*~*sleepTimeout*`
`exitPopup` `exitPopup`
### cardThermo Page ### cardThermo Page
`entityUpd,*internalNameEntiy*,*heading*,*currentTemp*,*destTemp*,*status*,*minTemp*,*maxTemp*,*stepTemp*[[,*iconId*,*activeColor*,*state*,*hvac_action*]]` `entityUpd~*heading*~*navigation*~*internalNameEntiy*~*currentTemp*~*destTemp*~*status*~*minTemp*~*maxTemp*~*stepTemp*[[~*iconId*~*activeColor*~*state*~*hvac_action*]]`
`[[]]` are not part of the command, this part repeats 9 times for the buttons `[[]]` are not part of the command~ this part repeats 9 times for the buttons
### cardMedia Page ### cardMedia Page
`entityUpd,|*internalNameEntiy*|*heading*|*icon*|*title*|*author*|*volume*|*playpauseicon*|currentSpeaker|speakerList-seperated-by-?` `entityUpd~*heading*~*navigation*~*internalNameEntiy*~*icon*~*title*~*author*~*volume*~*playpauseicon*~currentSpeaker~speakerList-seperated-by-?`
### cardAlarm Page ### cardAlarm Page
`entityUpd,*internalNameEntity*,*arm1*,*arm1ActionName*,*arm2*,*arm2ActionName*,*arm3*,*arm3ActionName*,*arm4*,*arm4ActionName*,*icon*,*iconcolor*,*numpadStatus*,*flashing*` `entityUpd~*internalNameEntity*~*navigation*~*arm1*~*arm1ActionName*~*arm2*~*arm2ActionName*~*arm3*~*arm3ActionName*~*arm4*~*arm4ActionName*~*icon*~*iconcolor*~*numpadStatus*~*flashing*`
## Messages from Nextion Display ## Messages from Nextion Display
`event,buttonPress2,pageName,bNext` `event~buttonPress2~pageName~bNext`
`event,buttonPress2,pageName,bPrev` `event~buttonPress2~pageName~bPrev`
`event~buttonPress2~pageName~bExit~number_of_taps`
`event~buttonPress2~pageName~sleepReached`
`event,buttonPress2,pageName,bExit,number_of_taps`
### startup page ### startup page
`event,startup,version,model` `event~startup~version~model`
### screensaver page ### screensaver page
`event,buttonPress2,screensaver,exit` - Touch Event on Screensaver `event~buttonPress2~screensaver~exit` - Touch Event on Screensaver
`event,screensaverOpen` - Screensaver has opened `event~screensaverOpen` - Screensaver has opened
### cardEntities Page ### cardEntities Page
`event,*eventName*,*entityName*,*actionName*,*optionalValue*` `event~*eventName*~*entityName*~*actionName*~*optionalValue*`
`event,buttonPress2,internalNameEntity,up` `event~buttonPress2~internalNameEntity~up`
`event,buttonPress2,internalNameEntity,down` `event~buttonPress2~internalNameEntity~down`
`event,buttonPress2,internalNameEntity,stop` `event~buttonPress2~internalNameEntity~stop`
`event,buttonPress2,internalNameEntity,OnOff,1` `event~buttonPress2~internalNameEntity~OnOff~1`
`event,buttonPress2,internalNameEntity,button` `event~buttonPress2~internalNameEntity~button`
### popupLight Page ### popupLight Page
`event,pageOpenDetail,popupLight,internalNameEntity` `event~pageOpenDetail~popupLight~internalNameEntity`
`event,buttonPress2,internalNameEntity,OnOff,1` `event~buttonPress2~internalNameEntity~OnOff~1`
`event,buttonPress2,internalNameEntity,brightnessSlider,50` `event~buttonPress2~internalNameEntity~brightnessSlider~50`
`event,buttonPress2,internalNameEntity,colorTempSlider,50` `event~buttonPress2~internalNameEntity~colorTempSlider~50`
`event,buttonPress2,internalNameEntity,colorWheel,x|y` `event~buttonPress2~internalNameEntity~colorWheel~x|y`
### popupShutter Page ### popupShutter Page
`event,pageOpenDetail,popupShutter,internalNameEntity` `event~pageOpenDetail~popupShutter~internalNameEntity`
`event,buttonPress2,internalNameEntity,positionSlider,50` `event~buttonPress2~internalNameEntity~positionSlider~50`
### popupNotify Page ### popupNotify Page
`event,buttonPress2,*internalName*,notifyAction,yes` `event~buttonPress2~*internalName*~notifyAction~yes`
`event,buttonPress2,*internalName*,notifyAction,no` `event~buttonPress2~*internalName*~notifyAction~no`
### cardThermo Page ### cardThermo Page
`event,buttonPress2,*entityName*,tempUpd,*temperature*` `event~buttonPress2~*entityName*~tempUpd~*temperature*`
`event,buttonPress2,*entityName*,hvac_action,*hvac_action*` `event~buttonPress2~*entityName*~hvac_action~*hvac_action*`
### cardMedia Page ### cardMedia Page
`event,buttonPress2,internalNameEntity,media-back` `event~buttonPress2~internalNameEntity~media-back`
`event,buttonPress2,internalNameEntity,media-pause` `event~buttonPress2~internalNameEntity~media-pause`
`event,buttonPress2,internalNameEntity,media-next` `event~buttonPress2~internalNameEntity~media-next`
`event,buttonPress2,internalNameEntity,volumeSlider,75` `event~buttonPress2~internalNameEntity~volumeSlider~75`
### cardAlarm Page ### cardAlarm Page
`event,buttonPress2,internalNameEntity,actionName,code` `event~buttonPress2~internalNameEntity~actionName~code`
# Icons IDs # Icons IDs
@@ -215,7 +218,7 @@ Please see Icon's int the [icons.md file](icons.md)
# Design Guidelines for Nextion HMI Project # Design Guidelines for Nextion HMI Project
Background Color is Background Color is
- RGB565: 6371 [18e3] (HEX: #1C1C1C, RGB: 28,28,28) - RGB565: 6371 [18e3] (HEX: #1C1C1C~ RGB: 28~28~28)
Source for Icons is the Material Design Font, used by HASPone Source for Icons is the Material Design Font~ used by HASPone
https://github.com/HASwitchPlate/HASPone https://github.com/HASwitchPlate/HASPone

View File

@@ -1,18 +1,18 @@
diff -bur HMI/n2t-out/Program.s.txt HMI/US/landscape/n2t-out/Program.s.txt diff -bur HMI/n2t-out/Program.s.txt HMI/US/landscape/n2t-out/Program.s.txt
--- HMI/n2t-out/Program.s.txt 2022-03-30 09:17:12.762388734 +0000 --- HMI/n2t-out/Program.s.txt 2022-04-03 07:35:47.898571291 +0000
+++ HMI/US/landscape/n2t-out/Program.s.txt 2022-03-30 09:17:13.638390126 +0000 +++ HMI/US/landscape/n2t-out/Program.s.txt 2022-04-03 07:35:48.646571620 +0000
@@ -10,6 +10,6 @@ @@ -11,6 +11,6 @@
int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
- // fix touch offset - // fix touch offset
- lcd_dev fffb 0002 0000 0020 - lcd_dev fffb 0002 0000 0020
+ // fix touch offset (Removed for US version) + // fix touch offset (Removed for US version)
+ //lcd_dev fffb 0002 0000 0020 + //lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup
diff -bur HMI/n2t-out/pageStartup.txt HMI/US/landscape/n2t-out/pageStartup.txt diff -bur HMI/n2t-out/pageStartup.txt HMI/US/landscape/n2t-out/pageStartup.txt
--- HMI/n2t-out/pageStartup.txt 2022-03-30 09:17:12.762388734 +0000 --- HMI/n2t-out/pageStartup.txt 2022-04-03 07:35:47.902571293 +0000
+++ HMI/US/landscape/n2t-out/pageStartup.txt 2022-03-30 09:17:13.638390126 +0000 +++ HMI/US/landscape/n2t-out/pageStartup.txt 2022-04-03 07:35:48.646571620 +0000
@@ -177,7 +177,7 @@ @@ -177,7 +177,7 @@
recmod=1 recmod=1
bauds=115200 bauds=115200

View File

@@ -10,6 +10,7 @@ Program.s
int sleepValue=0 int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
// fix touch offset (Removed for US version) // fix touch offset (Removed for US version)
//lcd_dev fffb 0002 0000 0020 //lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup

View File

@@ -25,7 +25,6 @@ Page cardAlarm
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
//vis nPageDisp,0
vis arm1,0 vis arm1,0
vis arm2,0 vis arm2,0
vis arm3,0 vis arm3,0
@@ -340,7 +339,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardAlarm,bPrev" tSend.txt="event,buttonPress2,cardAlarm,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1038,53 +1044,80 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entn //entn
spstr strCommand.txt,entn.txt,",",1 spstr strCommand.txt,entn.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//text arm1 //text arm1
spstr strCommand.txt,arm1.txt,",",2 spstr strCommand.txt,arm1.txt,"~",3
if(arm1.txt!="") if(arm1.txt!="")
{ {
vis arm1,1 vis arm1,1
} }
//id arm1 //id arm1
spstr strCommand.txt,va1.txt,",",3 spstr strCommand.txt,va1.txt,"~",4
//text arm2 //text arm2
spstr strCommand.txt,arm2.txt,",",4 spstr strCommand.txt,arm2.txt,"~",5
if(arm2.txt!="") if(arm2.txt!="")
{ {
vis arm2,1 vis arm2,1
} }
//id arm2 //id arm2
spstr strCommand.txt,va2.txt,",",5 spstr strCommand.txt,va2.txt,"~",6
//text arm3 //text arm3
spstr strCommand.txt,arm3.txt,",",6 spstr strCommand.txt,arm3.txt,"~",7
if(arm3.txt!="") if(arm3.txt!="")
{ {
vis arm3,1 vis arm3,1
} }
//id arm3 //id arm3
spstr strCommand.txt,va3.txt,",",7 spstr strCommand.txt,va3.txt,"~",8
//text arm4 //text arm4
spstr strCommand.txt,arm4.txt,",",8 spstr strCommand.txt,arm4.txt,"~",9
if(arm4.txt!="") if(arm4.txt!="")
{ {
vis arm4,1 vis arm4,1
} }
//id arm4 //id arm4
spstr strCommand.txt,va4.txt,",",9 spstr strCommand.txt,va4.txt,"~",10
//icon //icon
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//icon color //icon color
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon.pco=sys0 tIcon.pco=sys0
//numpad status //numpad status
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",13
if(tTmp.txt!="disable") if(tTmp.txt!="disable")
{ {
vis b0,1 vis b0,1
@@ -1099,9 +1132,23 @@ Timer tmSerial
vis b9,1 vis b9,1
vis b10,1 vis b10,1
vis tCode,1 vis tCode,1
}else
{
vis b0,0
vis b1,0
vis b2,0
vis b3,0
vis b4,0
vis b5,0
vis b6,0
vis b7,0
vis b8,0
vis b9,0
vis b10,0
vis tCode,0
} }
//flashing status //flashing status
spstr strCommand.txt,tTmp.txt,",",13 spstr strCommand.txt,tTmp.txt,"~",14
if(tTmp.txt=="enable") if(tTmp.txt=="enable")
{ {
tmFlash.en=1 tmFlash.en=1
@@ -1113,67 +1160,80 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardMedia")
{ {
page cardMedia page cardMedia
} }
if(tId.txt=="cardAlarm")
{
page cardAlarm
}
} }
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
@@ -1196,14 +1256,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardAlarm"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -429,7 +429,7 @@ Text tIcon1
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -459,7 +459,7 @@ Text tIcon2
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -489,7 +489,7 @@ Text tIcon3
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -519,7 +519,7 @@ Text tIcon4
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -1431,7 +1431,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardEntities,bPrev" tSend.txt="event,buttonPress2,cardEntities,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -2060,15 +2067,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis bUp1,0 vis bUp1,0
@@ -2083,16 +2117,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
if(type1.txt=="shutter") if(type1.txt=="shutter")
@@ -2115,7 +2149,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -2129,7 +2163,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -2146,7 +2180,7 @@ Timer tmSerial
bText1.pco=65535 bText1.pco=65535
bText1.pco2=65535 bText1.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="button") if(type1.txt=="button")
{ {
@@ -2161,7 +2195,7 @@ Timer tmSerial
bText1.pco=1374 bText1.pco=1374
bText1.pco2=1374 bText1.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="number") if(type1.txt=="number")
{ {
@@ -2174,7 +2208,7 @@ Timer tmSerial
vis hSlider1,1 vis hSlider1,1
vis nNum1,1 vis nNum1,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
//first value is current value //first value is current value
spstr bText1.txt,tTmp.txt,"|",0 spstr bText1.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2190,9 +2224,9 @@ Timer tmSerial
hSlider1.maxval=sys0 hSlider1.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis bUp2,0 vis bUp2,0
@@ -2207,16 +2241,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1
vis tIcon2,1 vis tIcon2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon2.pco=sys0 tIcon2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
if(type2.txt=="shutter") if(type2.txt=="shutter")
@@ -2239,7 +2273,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -2253,7 +2287,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -2270,7 +2304,7 @@ Timer tmSerial
bText2.pco=65535 bText2.pco=65535
bText2.pco2=65535 bText2.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="button") if(type2.txt=="button")
{ {
@@ -2285,7 +2319,7 @@ Timer tmSerial
bText2.pco=1374 bText2.pco=1374
bText2.pco2=1374 bText2.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="number") if(type2.txt=="number")
{ {
@@ -2298,7 +2332,7 @@ Timer tmSerial
vis hSlider2,1 vis hSlider2,1
vis nNum2,1 vis nNum2,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
//first value is current value //first value is current value
spstr bText2.txt,tTmp.txt,"|",0 spstr bText2.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2314,9 +2348,9 @@ Timer tmSerial
hSlider2.maxval=sys0 hSlider2.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis bUp3,0 vis bUp3,0
@@ -2331,16 +2365,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1
vis tIcon3,1 vis tIcon3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon3.pco=sys0 tIcon3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
if(type3.txt=="shutter") if(type3.txt=="shutter")
@@ -2363,7 +2397,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -2377,7 +2411,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -2394,7 +2428,7 @@ Timer tmSerial
bText3.pco=65535 bText3.pco=65535
bText3.pco2=65535 bText3.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="button") if(type3.txt=="button")
{ {
@@ -2409,7 +2443,7 @@ Timer tmSerial
bText3.pco=1374 bText3.pco=1374
bText3.pco2=1374 bText3.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="number") if(type3.txt=="number")
{ {
@@ -2422,7 +2456,7 @@ Timer tmSerial
vis hSlider3,1 vis hSlider3,1
vis nNum3,1 vis nNum3,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
//first value is current value //first value is current value
spstr bText3.txt,tTmp.txt,"|",0 spstr bText3.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2438,9 +2472,9 @@ Timer tmSerial
hSlider3.maxval=sys0 hSlider3.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis bUp4,0 vis bUp4,0
@@ -2455,16 +2489,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1
vis tIcon4,1 vis tIcon4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon4.pco=sys0 tIcon4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
if(type4.txt=="shutter") if(type4.txt=="shutter")
@@ -2487,7 +2521,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -2501,7 +2535,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -2518,7 +2552,7 @@ Timer tmSerial
bText4.pco=65535 bText4.pco=65535
bText4.pco2=65535 bText4.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="button") if(type4.txt=="button")
{ {
@@ -2533,7 +2567,7 @@ Timer tmSerial
bText4.pco=1374 bText4.pco=1374
bText4.pco2=1374 bText4.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="number") if(type4.txt=="number")
{ {
@@ -2546,7 +2580,7 @@ Timer tmSerial
vis hSlider4,1 vis hSlider4,1
vis nNum4,1 vis nNum4,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
//first value is current value //first value is current value
spstr bText4.txt,tTmp.txt,"|",0 spstr bText4.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2566,11 +2600,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -2620,23 +2654,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -2660,14 +2694,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardEntities"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -515,7 +515,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardGrid,bPrev" tSend.txt="event,buttonPress2,cardGrid,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1000,15 +1007,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis tEntity1,0 vis tEntity1,0
@@ -1016,22 +1050,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1
vis bEntity1,1 vis bEntity1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity1.pco=sys0 bEntity1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis tEntity2,0 vis tEntity2,0
@@ -1039,22 +1073,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1
vis bEntity2,1 vis bEntity2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity2.pco=sys0 bEntity2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis tEntity3,0 vis tEntity3,0
@@ -1062,22 +1096,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1
vis bEntity3,1 vis bEntity3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity3.pco=sys0 bEntity3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis tEntity4,0 vis tEntity4,0
@@ -1085,22 +1119,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1
vis bEntity4,1 vis bEntity4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity4.pco=sys0 bEntity4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis tEntity5,0 vis tEntity5,0
@@ -1108,22 +1142,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1
vis bEntity5,1 vis bEntity5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity5.pco=sys0 bEntity5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis tEntity6,0 vis tEntity6,0
@@ -1131,16 +1165,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1
vis bEntity6,1 vis bEntity6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity6.pco=sys0 bEntity6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
} }
@@ -1148,11 +1182,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1202,23 +1236,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -1242,14 +1276,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardGrid"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -93,8 +93,8 @@ Text tTmp
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 21 x coordinate : 29
y coordinate : 147 y coordinate : 144
Width : 27 Width : 27
Height : 30 Height : 30
Effect : load Effect : load
@@ -153,8 +153,8 @@ Text tId
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 51 x coordinate : 57
y coordinate : 167 y coordinate : 157
Width : 30 Width : 30
Height : 30 Height : 30
Effect : load Effect : load
@@ -856,7 +856,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardMedia,bPrev" tSend.txt="event,buttonPress2,cardMedia,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -920,31 +927,58 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,"|",1
//heading //heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//title //title
spstr strCommand.txt,tTitle.txt,"|",4 spstr strCommand.txt,tTitle.txt,"~",5
//author //author
spstr strCommand.txt,tAuthor.txt,"|",5 spstr strCommand.txt,tAuthor.txt,"~",6
//volume //volume
spstr strCommand.txt,tTmp.txt,"|",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hVolume.val=sys0 hVolume.val=sys0
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1 substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1
//speaker current //speaker current
spstr strCommand.txt,tSpeaker.txt,"|",8 spstr strCommand.txt,tSpeaker.txt,"~",9
if(tSpeaker.txt!="") if(tSpeaker.txt!="")
{ {
tSpeaker.pco=1374 tSpeaker.pco=1374
@@ -953,14 +987,14 @@ Timer tmSerial
tSpeaker.pco=65535 tSpeaker.pco=65535
} }
//speaker list //speaker list
spstr strCommand.txt,vaSpeakerList.txt,"|",9 spstr strCommand.txt,vaSpeakerList.txt,"~",10
if(vaSpeakerList.txt=="") if(vaSpeakerList.txt=="")
{ {
vis t6,0 vis t6,0
} }
vaSpeakerPos.val=0 vaSpeakerPos.val=0
// on off button // on off button
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",11
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t5,0 vis t5,0
@@ -973,62 +1007,75 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
@@ -1065,14 +1112,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardMedia"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -683,7 +683,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardThermo,bPrev" tSend.txt="event,buttonPress2,cardThermo,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1188,29 +1195,56 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,",",1
//heading //heading
spstr strCommand.txt,tHeading.txt,",",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//currentTemp //currentTemp
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,xTempCurr.val,0,0 covx tTmp.txt,xTempCurr.val,0,0
//dstTemp //dstTemp
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,xTempDest.val,0,0 covx tTmp.txt,xTempDest.val,0,0
//status //status
spstr strCommand.txt,tStatus.txt,",",5 spstr strCommand.txt,tStatus.txt,"~",6
//minTemp //minTemp
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,xTempMin.val,0,0 covx tTmp.txt,xTempMin.val,0,0
//maxTemp //maxTemp
spstr strCommand.txt,tTmp.txt,",",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,xTempMax.val,0,0 covx tTmp.txt,xTempMax.val,0,0
//tempStep //tempStep
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,xTempStep.val,0,0 covx tTmp.txt,xTempStep.val,0,0
// disable all buttons // disable all buttons
vis bt0,0 vis bt0,0
@@ -1223,232 +1257,237 @@ Timer tmSerial
vis bt7,0 vis bt7,0
vis bt8,0 vis bt8,0
//bt0 //bt0
spstr strCommand.txt,tTmp.txt,",",9 spstr strCommand.txt,tTmp.txt,"~",10
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt0.txt,sys0,1 substr pageIcons.tIcons.txt,bt0.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,bt0.pco2,0,0 covx tTmp.txt,bt0.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,bt0.val,0,0 covx tTmp.txt,bt0.val,0,0
// save action // save action
spstr strCommand.txt,va0.txt,",",12 spstr strCommand.txt,va0.txt,"~",13
//enable //enable
vis bt0,1 vis bt0,1
} } //bt1
//bt1 spstr strCommand.txt,tTmp.txt,"~",14
spstr strCommand.txt,tTmp.txt,",",13
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt1.txt,sys0,1 substr pageIcons.tIcons.txt,bt1.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,bt1.pco2,0,0 covx tTmp.txt,bt1.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",15 spstr strCommand.txt,tTmp.txt,"~",16
covx tTmp.txt,bt1.val,0,0 covx tTmp.txt,bt1.val,0,0
// save action // save action
spstr strCommand.txt,va1.txt,",",16 spstr strCommand.txt,va1.txt,"~",17
//enable //enable
vis bt1,1 vis bt1,1
} } //bt2
//bt2 spstr strCommand.txt,tTmp.txt,"~",18
spstr strCommand.txt,tTmp.txt,",",17
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt2.txt,sys0,1 substr pageIcons.tIcons.txt,bt2.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",19
covx tTmp.txt,bt2.pco2,0,0 covx tTmp.txt,bt2.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",19 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,bt2.val,0,0 covx tTmp.txt,bt2.val,0,0
// save action // save action
spstr strCommand.txt,va2.txt,",",20 spstr strCommand.txt,va2.txt,"~",21
//enable //enable
vis bt2,1 vis bt2,1
} } //bt3
//bt3 spstr strCommand.txt,tTmp.txt,"~",22
spstr strCommand.txt,tTmp.txt,",",21
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt3.txt,sys0,1 substr pageIcons.tIcons.txt,bt3.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",22 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,bt3.pco2,0,0 covx tTmp.txt,bt3.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,bt3.val,0,0 covx tTmp.txt,bt3.val,0,0
// save action // save action
spstr strCommand.txt,va3.txt,",",24 spstr strCommand.txt,va3.txt,"~",25
//enable //enable
vis bt3,1 vis bt3,1
} } //bt4
//bt4 spstr strCommand.txt,tTmp.txt,"~",26
spstr strCommand.txt,tTmp.txt,",",25
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt4.txt,sys0,1 substr pageIcons.tIcons.txt,bt4.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",27
covx tTmp.txt,bt4.pco2,0,0 covx tTmp.txt,bt4.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",27 spstr strCommand.txt,tTmp.txt,"~",28
covx tTmp.txt,bt4.val,0,0 covx tTmp.txt,bt4.val,0,0
// save action // save action
spstr strCommand.txt,va4.txt,",",28 spstr strCommand.txt,va4.txt,"~",29
//enable //enable
vis bt4,1 vis bt4,1
} } //bt5
//bt5 spstr strCommand.txt,tTmp.txt,"~",30
spstr strCommand.txt,tTmp.txt,",",29
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt5.txt,sys0,1 substr pageIcons.tIcons.txt,bt5.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",31
covx tTmp.txt,bt5.pco2,0,0 covx tTmp.txt,bt5.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",31 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,bt5.val,0,0 covx tTmp.txt,bt5.val,0,0
// save action // save action
spstr strCommand.txt,va5.txt,",",32 spstr strCommand.txt,va5.txt,"~",33
//enable //enable
vis bt5,1 vis bt5,1
} } //bt6
//bt6 spstr strCommand.txt,tTmp.txt,"~",34
spstr strCommand.txt,tTmp.txt,",",33
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt6.txt,sys0,1 substr pageIcons.tIcons.txt,bt6.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",34 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,bt6.pco2,0,0 covx tTmp.txt,bt6.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,bt6.val,0,0 covx tTmp.txt,bt6.val,0,0
// save action // save action
spstr strCommand.txt,va6.txt,",",36 spstr strCommand.txt,va6.txt,"~",37
//enable //enable
vis bt6,1 vis bt6,1
} } //bt7
//bt7 spstr strCommand.txt,tTmp.txt,"~",38
spstr strCommand.txt,tTmp.txt,",",37
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt7.txt,sys0,1 substr pageIcons.tIcons.txt,bt7.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",39
covx tTmp.txt,bt7.pco2,0,0 covx tTmp.txt,bt7.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",39 spstr strCommand.txt,tTmp.txt,"~",40
covx tTmp.txt,bt7.val,0,0 covx tTmp.txt,bt7.val,0,0
// save action // save action
spstr strCommand.txt,va7.txt,",",40 spstr strCommand.txt,va7.txt,"~",41
//enable //enable
vis bt7,1 vis bt7,1
} } //bt8
//bt8 spstr strCommand.txt,tTmp.txt,"~",42
spstr strCommand.txt,tTmp.txt,",",41
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt8.txt,sys0,1 substr pageIcons.tIcons.txt,bt8.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",42 spstr strCommand.txt,tTmp.txt,"~",43
covx tTmp.txt,bt8.pco2,0,0 covx tTmp.txt,bt8.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",43 spstr strCommand.txt,tTmp.txt,"~",44
covx tTmp.txt,bt8.val,0,0 covx tTmp.txt,bt8.val,0,0
// save action // save action
spstr strCommand.txt,va8.txt,",",44 spstr strCommand.txt,va8.txt,"~",45
//enable //enable
vis bt8,1 vis bt8,1
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,sleepTimeout,0,0
}
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardGrid")
{ {
page cardMedia page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
page cardAlarm page cardAlarm
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0
}
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1470,14 +1509,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardThermo"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -1,11 +1,7 @@
Program.s Program.s
0 Component(s) 0 Component(s)
9 Line(s) of event code 10 Line(s) of event code
9 Unique line(s) of event code 10 Unique line(s) of event code
pageIcons
5 Component(s)
0 Line(s) of event code
0 Unique line(s) of event code
pageTest pageTest
13 Component(s) 13 Component(s)
13 Line(s) of event code 13 Line(s) of event code
@@ -14,49 +10,53 @@ pageSerialTest
13 Component(s) 13 Component(s)
48 Line(s) of event code 48 Line(s) of event code
43 Unique line(s) of event code 43 Unique line(s) of event code
pageIcons
7 Component(s)
0 Line(s) of event code
0 Unique line(s) of event code
popupNotify popupNotify
17 Component(s) 17 Component(s)
179 Line(s) of event code 178 Line(s) of event code
118 Unique line(s) of event code 117 Unique line(s) of event code
popupShutter
19 Component(s)
179 Line(s) of event code
102 Unique line(s) of event code
screensaver
31 Component(s)
183 Line(s) of event code
133 Unique line(s) of event code
popupLight
27 Component(s)
323 Line(s) of event code
174 Unique line(s) of event code
pageStartup pageStartup
19 Component(s) 19 Component(s)
150 Line(s) of event code 150 Line(s) of event code
113 Unique line(s) of event code 113 Unique line(s) of event code
cardAlarm popupShutter
35 Component(s) 19 Component(s)
276 Line(s) of event code 178 Line(s) of event code
172 Unique line(s) of event code 101 Unique line(s) of event code
cardMedia
30 Component(s)
278 Line(s) of event code
139 Unique line(s) of event code
cardThermo
41 Component(s)
405 Line(s) of event code
217 Unique line(s) of event code
cardGrid cardGrid
39 Component(s) 39 Component(s)
388 Line(s) of event code 430 Line(s) of event code
224 Unique line(s) of event code 249 Unique line(s) of event code
popupLight
27 Component(s)
322 Line(s) of event code
173 Unique line(s) of event code
screensaver
33 Component(s)
207 Line(s) of event code
158 Unique line(s) of event code
cardMedia
30 Component(s)
333 Line(s) of event code
170 Unique line(s) of event code
cardAlarm
35 Component(s)
345 Line(s) of event code
214 Unique line(s) of event code
cardThermo
41 Component(s)
460 Line(s) of event code
284 Unique line(s) of event code
cardEntities cardEntities
62 Component(s) 62 Component(s)
930 Line(s) of event code 972 Line(s) of event code
388 Unique line(s) of event code 413 Unique line(s) of event code
Total Total
13 Page(s) 13 Page(s)
351 Component(s) 355 Component(s)
3361 Line(s) of event code 3646 Line(s) of event code
908 Unique line(s) of event code 1039 Unique line(s) of event code

View File

@@ -18,6 +18,20 @@ Page pageIcons
Fill : solid color Fill : solid color
Back. Color : 65535 Back. Color : 65535
Variable (string) vaTime
Attributes
ID : 5
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
ID : 6
Scope : global
Text :
Max. Text Size: 35
Text tIcons Text tIcons
Attributes Attributes
ID : 2 ID : 2
@@ -42,8 +56,8 @@ Text tIcons
Horizontal Alignment : left Horizontal Alignment : left
Vertical Alignment : top Vertical Alignment : top
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 150 Max. Text Size : 170
Word wrap : enabled Word wrap : enabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0

View File

@@ -296,7 +296,7 @@ Text tMsg1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 42 x coordinate : 59
y coordinate : 223 y coordinate : 223
Width : 375 Width : 375
Height : 30 Height : 30
@@ -326,9 +326,9 @@ Text tMsg2
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 42
y coordinate : 256 y coordinate : 256
Width : 423 Width : 408
Height : 25 Height : 25
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
@@ -356,9 +356,9 @@ Text tMsg3
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 42
y coordinate : 278 y coordinate : 278
Width : 423 Width : 408
Height : 25 Height : 25
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
@@ -402,7 +402,7 @@ Text tVersion
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 23 Text : 28
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -483,7 +483,7 @@ Hotspot mSpinner
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 169 x coordinate : 171
y coordinate : 49 y coordinate : 49
Width : 140 Width : 140
Height : 140 Height : 140
@@ -552,27 +552,27 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
@@ -580,11 +580,11 @@ Timer tmSerial
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -727,7 +727,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -785,24 +784,24 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// get Button State // get Button State
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
// get Brightness value // get Brightness value
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",4
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t1,0 vis t1,0
@@ -820,7 +819,7 @@ Timer tmSerial
} }
} }
// get ColorTemp value // get ColorTemp value
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis hTempSlider,0 vis hTempSlider,0
@@ -864,7 +863,7 @@ Timer tmSerial
} }
} }
// get Color value // get Color value
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
// disable -> isn't supported // disable -> isn't supported
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
@@ -888,34 +887,34 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -403,7 +403,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -461,70 +460,70 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get entn // get entn
spstr strCommand.txt,entn.txt,"|",1 spstr strCommand.txt,entn.txt,"~",1
// get Heading // get Heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",2
// heading color // heading color
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tHeading.pco=sys0 tHeading.pco=sys0
// get b1 // get b1
spstr strCommand.txt,b1.txt,"|",4 spstr strCommand.txt,b1.txt,"~",4
if(b1.txt!="") if(b1.txt!="")
{ {
vis b1,1 vis b1,1
} }
// b1 color // b1 color
spstr strCommand.txt,tTmp.txt,"|",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b1.pco=sys0 b1.pco=sys0
// get b2 // get b2
spstr strCommand.txt,b2.txt,"|",6 spstr strCommand.txt,b2.txt,"~",6
if(b2.txt!="") if(b2.txt!="")
{ {
vis b2,1 vis b2,1
} }
// b2 color // b2 color
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b2.pco=sys0 b2.pco=sys0
// get tText // get tText
spstr strCommand.txt,tText.txt,"|",8 spstr strCommand.txt,tText.txt,"~",8
// tText color // tText color
spstr strCommand.txt,tTmp.txt,"|",9 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tText.pco=sys0 tText.pco=sys0
//preserve old sleepTimeout //preserve old sleepTimeout
vaOldSleepT.val=sleepTimeout vaOldSleepT.val=sleepTimeout
// sleep timeout // sleep timeout
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
sleepTimeout=sys0 sleepTimeout=sys0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="exitPopup") if(tInstruction.txt=="exitPopup")
@@ -536,11 +535,11 @@ Timer tmSerial
sleepTimeout=vaOldSleepT.val sleepTimeout=vaOldSleepT.val
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -532,7 +532,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -590,45 +589,45 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get Position value // get Position value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hPosition.val=sys0 hPosition.val=sys0
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -22,111 +22,46 @@ Page screensaver
Preinitialize Event Preinitialize Event
recmod=1 recmod=1
bauds=115200 bauds=115200
vis originPage,0
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis p0,0 vis p0,0
//load gloabl time string from pageIcons //load gloabl time string from pageIcons
//tTime.txt=vaTime.txt //tTime.txt=vaTime.txt
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
} }
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
dim=dimValue dim=dimValue
vis tSend,0 vis tSend,0
//page open event //page open event
// clear weather elements, to keep example content in HMI // clear weather elements, to keep example content in HMI
tMainIcon.txt=""
tMainText.txt=""
tForecast1.txt=""
tF1Icon.txt=""
tForecast1Val.txt=""
tForecast2.txt=""
tF2Icon.txt=""
tForecast2Val.txt=""
tSend.txt="event,screensaverOpen"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
ID : 5 ID : 4
Scope : local Scope : local
Text : Text :
Max. Text Size: 200 Max. Text Size: 200
Variable (string) vaTime
Attributes
ID : 10
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
ID : 11
Scope : global
Text :
Max. Text Size: 30
Variable (string) tId Variable (string) tId
Attributes Attributes
ID : 22 ID : 19
Scope : local Scope : local
Text : Text :
Max. Text Size: 25 Max. Text Size: 25
Variable (int32) vaTap Variable (int32) vaTap
Attributes Attributes
ID : 30 ID : 27
Scope: local Scope: local
Value: 0 Value: 0
Number originPage
Attributes
ID : 3
Scope : global
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 452
y coordinate : 267
Width : 24
Height : 49
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 65535
Font Color : 0
Horizontal Alignment : center
Vertical Alignment : center
Value : 0
Significant digits shown : all
Format : decimal
Word wrap : enabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tInstruction Text tInstruction
Attributes Attributes
ID : 6 ID : 5
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -156,7 +91,7 @@ Text tInstruction
Text tTmp Text tTmp
Attributes Attributes
ID : 7 ID : 6
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -186,7 +121,7 @@ Text tTmp
Text tTime Text tTime
Attributes Attributes
ID : 8 ID : 7
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -216,7 +151,7 @@ Text tTime
Text tDate Text tDate
Attributes Attributes
ID : 9 ID : 8
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -239,14 +174,14 @@ Text tDate
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Tuesday, 08. March 2022 Text : Tuesday, 08. March 2022
Max. Text Size : 30 Max. Text Size : 35
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tSend Text tSend
Attributes Attributes
ID : 12 ID : 9
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -276,7 +211,7 @@ Text tSend
Text tMainIcon Text tMainIcon
Attributes Attributes
ID : 13 ID : 10
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -298,7 +233,7 @@ Text tMainIcon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -306,7 +241,7 @@ Text tMainIcon
Text tMainText Text tMainText
Attributes Attributes
ID : 14 ID : 11
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -328,7 +263,7 @@ Text tMainText
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 2,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -336,7 +271,7 @@ Text tMainText
Text tForecast1 Text tForecast1
Attributes Attributes
ID : 15 ID : 12
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -358,7 +293,7 @@ Text tForecast1
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Mi Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -366,16 +301,16 @@ Text tForecast1
Text tForecast1Val Text tForecast1Val
Attributes Attributes
ID : 16 ID : 13
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 141 x coordinate : 140
y coordinate : 277 y coordinate : 276
Width : 72 Width : 71
Height : 26 Height : 25
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -388,7 +323,7 @@ Text tForecast1Val
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 9,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -396,7 +331,7 @@ Text tForecast1Val
Text tF1Icon Text tF1Icon
Attributes Attributes
ID : 17 ID : 14
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -418,7 +353,7 @@ Text tF1Icon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -426,7 +361,7 @@ Text tF1Icon
Text tForecast2 Text tForecast2
Attributes Attributes
ID : 18 ID : 15
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -448,7 +383,7 @@ Text tForecast2
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Do Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -456,7 +391,7 @@ Text tForecast2
Text tF2Icon Text tF2Icon
Attributes Attributes
ID : 19 ID : 16
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -478,7 +413,7 @@ Text tF2Icon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -486,7 +421,7 @@ Text tF2Icon
Text tForecast2Val Text tForecast2Val
Attributes Attributes
ID : 20 ID : 17
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -508,7 +443,7 @@ Text tForecast2Val
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 11,9 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -516,13 +451,13 @@ Text tForecast2Val
Text t10 Text t10
Attributes Attributes
ID : 21 ID : 18
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 46 x coordinate : 62
y coordinate : 195 y coordinate : 195
Width : 360 Width : 360
Height : 2 Height : 2
@@ -546,7 +481,7 @@ Text t10
Text tAMPM Text tAMPM
Attributes Attributes
ID : 23 ID : 20
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -576,7 +511,7 @@ Text tAMPM
Text tForecast3Val Text tForecast3Val
Attributes Attributes
ID : 24 ID : 21
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -606,7 +541,7 @@ Text tForecast3Val
Text tF3Icon Text tF3Icon
Attributes Attributes
ID : 25 ID : 22
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -636,7 +571,7 @@ Text tF3Icon
Text tForecast3 Text tForecast3
Attributes Attributes
ID : 26 ID : 23
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -666,7 +601,7 @@ Text tForecast3
Text tForecast4 Text tForecast4
Attributes Attributes
ID : 27 ID : 24
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -696,7 +631,7 @@ Text tForecast4
Text tF4Icon Text tF4Icon
Attributes Attributes
ID : 28 ID : 25
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -719,14 +654,14 @@ Text tF4Icon
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Text :
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tForecast4Val Text tForecast4Val
Attributes Attributes
ID : 29 ID : 26
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -754,6 +689,126 @@ Text tForecast4Val
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tMainTextAlt
Attributes
ID : 29
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 119
y coordinate : 210
Width : 106
Height : 42
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 2
Back. Color : 0
Font Color : 65535
Horizontal Alignment : left
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMainIconAlt
Attributes
ID : 30
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 15
y coordinate : 221
Width : 100
Height : 66
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 3
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMRIcon
Attributes
ID : 31
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 116
y coordinate : 266
Width : 40
Height : 35
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 1
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMR
Attributes
ID : 32
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 159
y coordinate : 270
Width : 62
Height : 21
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 0
Font Color : 65535
Horizontal Alignment : left
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Picture p0 Picture p0
Attributes Attributes
ID : 1 ID : 1
@@ -773,7 +828,7 @@ Picture p0
Timer tmSerial Timer tmSerial
Attributes Attributes
ID : 4 ID : 3
Scope : local Scope : local
Period (ms): 50 Period (ms): 50
Enabled : yes Enabled : yes
@@ -822,7 +877,7 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="wake") if(tInstruction.txt=="wake")
{ {
//dim=100 //dim=100
@@ -831,16 +886,16 @@ Timer tmSerial
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
//get set time to global variable //get set time to global variable
spstr strCommand.txt,vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
@@ -849,66 +904,104 @@ Timer tmSerial
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
//get set date to global variable //get set date to global variable
spstr strCommand.txt,vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="weatherUpdate") if(tInstruction.txt=="weatherUpdate")
{ {
vis tMainIcon,1
vis tMainIconAlt,0
vis tMainText,1
vis tMainTextAlt,0
vis tMRIcon,0
vis tMR,0
//tMainIcon //tMainIcon
spstr strCommand.txt,tTmp.txt,"?",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1
tMainIconAlt.txt=tMainIcon.txt
//tMainText //tMainText
spstr strCommand.txt,tMainText.txt,"?",2 spstr strCommand.txt,tMainText.txt,"~",2
tMainTextAlt.txt=tMainText.txt
//tForecast1 //tForecast1
spstr strCommand.txt,tForecast1.txt,"?",3 spstr strCommand.txt,tForecast1.txt,"~",3
//tF1Icon //tF1Icon
spstr strCommand.txt,tTmp.txt,"?",4 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1
//tForecast1Val //tForecast1Val
spstr strCommand.txt,tForecast1Val.txt,"?",5 spstr strCommand.txt,tForecast1Val.txt,"~",5
//tForecast2 //tForecast2
spstr strCommand.txt,tForecast2.txt,"?",6 spstr strCommand.txt,tForecast2.txt,"~",6
//tF2Icon //tF2Icon
spstr strCommand.txt,tTmp.txt,"?",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1
//tForecast2Val //tForecast2Val
spstr strCommand.txt,tForecast2Val.txt,"?",8 spstr strCommand.txt,tForecast2Val.txt,"~",8
//tForecast3 //tForecast3
spstr strCommand.txt,tForecast3.txt,"?",9 spstr strCommand.txt,tForecast3.txt,"~",9
//tF3Icon //tF3Icon
spstr strCommand.txt,tTmp.txt,"?",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1
//tForecast3Val //tForecast3Val
spstr strCommand.txt,tForecast3Val.txt,"?",11 spstr strCommand.txt,tForecast3Val.txt,"~",11
//tForecast4 //tForecast4
spstr strCommand.txt,tForecast4.txt,"?",12 spstr strCommand.txt,tForecast4.txt,"~",12
//tF4Icon //tF4Icon
spstr strCommand.txt,tTmp.txt,"?",13 spstr strCommand.txt,tTmp.txt,"~",13
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1
//tForecast4Val //tForecast4Val
spstr strCommand.txt,tForecast4Val.txt,"?",14 spstr strCommand.txt,tForecast4Val.txt,"~",14
//alternative layout
//tMRIcon
spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMRIcon.txt,sys0,1
if(tTmp.txt!="")
{
//value for tMRIcon, activate alternative layout
vis tMainIcon,0
vis tMainText,0
vis tMainTextAlt,1
vis tMainIconAlt,1
vis tMRIcon,1
vis tMR,1
vis tForecast1,0
vis tF1Icon,0
vis tForecast1Val,0
//move forecast values to the right
tForecast4.txt=tForecast3.txt
tForecast3.txt=tForecast2.txt
tForecast2.txt=tForecast1.txt
tForecast4Val.txt=tForecast3Val.txt
tForecast3Val.txt=tForecast2Val.txt
tForecast2Val.txt=tForecast1Val.txt
tF4Icon.txt=tF3Icon.txt
tF3Icon.txt=tF2Icon.txt
tF2Icon.txt=tF1Icon.txt
}
//tMR
spstr strCommand.txt,tMR.txt,"~",16
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete u[2]+3 udelete u[2]+3
bufferPos=0 bufferPos=0
@@ -962,6 +1055,26 @@ Timer tmSerial
} }
} }
Timer tmSleep
Attributes
ID : 28
Scope : local
Period (ms): 1000
Enabled : yes
Events
Timer Event
if(sleepTimeout!=0&&dimValue!=dim)
{
sleepValue+=1
if(sleepTimeout<=sleepValue)
{
sleepValue=0
dim=dimValue
vaTap.val=0
}
}
TouchCap tc0 TouchCap tc0
Attributes Attributes
ID : 2 ID : 2
@@ -970,7 +1083,7 @@ TouchCap tc0
Events Events
Touch Press Event Touch Press Event
dim=100 dim=dimValueNormal
vaTap.val+=1 vaTap.val+=1
covx vaTap.val,tTmp.txt,0,0 covx vaTap.val,tTmp.txt,0,0
tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt
@@ -985,6 +1098,4 @@ TouchCap tc0
prints sys0,2 prints sys0,2
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
//dim=100
//page originPage.val

View File

@@ -10,6 +10,7 @@ Program.s
int sleepValue=0 int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
// fix touch offset (Removed for US version) // fix touch offset (Removed for US version)
//lcd_dev fffb 0002 0000 0020 //lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup

View File

@@ -17,7 +17,6 @@ Page cardAlarm
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
//vis nPageDisp,0
vis arm1,0 vis arm1,0
vis arm2,0 vis arm2,0
vis arm3,0 vis arm3,0
@@ -171,7 +170,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardAlarm,bPrev" tSend.txt="event,buttonPress2,cardAlarm,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -508,53 +514,80 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entn //entn
spstr strCommand.txt,entn.txt,",",1 spstr strCommand.txt,entn.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//text arm1 //text arm1
spstr strCommand.txt,arm1.txt,",",2 spstr strCommand.txt,arm1.txt,"~",3
if(arm1.txt!="") if(arm1.txt!="")
{ {
vis arm1,1 vis arm1,1
} }
//id arm1 //id arm1
spstr strCommand.txt,va1.txt,",",3 spstr strCommand.txt,va1.txt,"~",4
//text arm2 //text arm2
spstr strCommand.txt,arm2.txt,",",4 spstr strCommand.txt,arm2.txt,"~",5
if(arm2.txt!="") if(arm2.txt!="")
{ {
vis arm2,1 vis arm2,1
} }
//id arm2 //id arm2
spstr strCommand.txt,va2.txt,",",5 spstr strCommand.txt,va2.txt,"~",6
//text arm3 //text arm3
spstr strCommand.txt,arm3.txt,",",6 spstr strCommand.txt,arm3.txt,"~",7
if(arm3.txt!="") if(arm3.txt!="")
{ {
vis arm3,1 vis arm3,1
} }
//id arm3 //id arm3
spstr strCommand.txt,va3.txt,",",7 spstr strCommand.txt,va3.txt,"~",8
//text arm4 //text arm4
spstr strCommand.txt,arm4.txt,",",8 spstr strCommand.txt,arm4.txt,"~",9
if(arm4.txt!="") if(arm4.txt!="")
{ {
vis arm4,1 vis arm4,1
} }
//id arm4 //id arm4
spstr strCommand.txt,va4.txt,",",9 spstr strCommand.txt,va4.txt,"~",10
//icon //icon
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//icon color //icon color
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon.pco=sys0 tIcon.pco=sys0
//numpad status //numpad status
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",13
if(tTmp.txt!="disable") if(tTmp.txt!="disable")
{ {
vis b0,1 vis b0,1
@@ -569,9 +602,23 @@ Timer tmSerial
vis b9,1 vis b9,1
vis b10,1 vis b10,1
vis tCode,1 vis tCode,1
}else
{
vis b0,0
vis b1,0
vis b2,0
vis b3,0
vis b4,0
vis b5,0
vis b6,0
vis b7,0
vis b8,0
vis b9,0
vis b10,0
vis tCode,0
} }
//flashing status //flashing status
spstr strCommand.txt,tTmp.txt,",",13 spstr strCommand.txt,tTmp.txt,"~",14
if(tTmp.txt=="enable") if(tTmp.txt=="enable")
{ {
tmFlash.en=1 tmFlash.en=1
@@ -583,67 +630,80 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardMedia")
{ {
page cardMedia page cardMedia
} }
if(tId.txt=="cardAlarm")
{
page cardAlarm
}
} }
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
@@ -665,14 +725,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardAlarm"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -211,7 +211,7 @@ Text tIcon1
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Text tIcon2 Text tIcon2
Attributes Attributes
@@ -221,7 +221,7 @@ Text tIcon2
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tIcon3 Text tIcon3
Attributes Attributes
@@ -231,7 +231,7 @@ Text tIcon3
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Text tIcon4 Text tIcon4
Attributes Attributes
@@ -241,7 +241,7 @@ Text tIcon4
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tSend Text tSend
Attributes Attributes
@@ -714,7 +714,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardEntities,bPrev" tSend.txt="event,buttonPress2,cardEntities,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1115,15 +1122,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis bUp1,0 vis bUp1,0
@@ -1138,16 +1172,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
if(type1.txt=="shutter") if(type1.txt=="shutter")
@@ -1170,7 +1204,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -1184,7 +1218,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -1201,7 +1235,7 @@ Timer tmSerial
bText1.pco=65535 bText1.pco=65535
bText1.pco2=65535 bText1.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="button") if(type1.txt=="button")
{ {
@@ -1216,7 +1250,7 @@ Timer tmSerial
bText1.pco=1374 bText1.pco=1374
bText1.pco2=1374 bText1.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="number") if(type1.txt=="number")
{ {
@@ -1229,7 +1263,7 @@ Timer tmSerial
vis hSlider1,1 vis hSlider1,1
vis nNum1,1 vis nNum1,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
//first value is current value //first value is current value
spstr bText1.txt,tTmp.txt,"|",0 spstr bText1.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1245,9 +1279,9 @@ Timer tmSerial
hSlider1.maxval=sys0 hSlider1.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis bUp2,0 vis bUp2,0
@@ -1262,16 +1296,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1
vis tIcon2,1 vis tIcon2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon2.pco=sys0 tIcon2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
if(type2.txt=="shutter") if(type2.txt=="shutter")
@@ -1294,7 +1328,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -1308,7 +1342,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -1325,7 +1359,7 @@ Timer tmSerial
bText2.pco=65535 bText2.pco=65535
bText2.pco2=65535 bText2.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="button") if(type2.txt=="button")
{ {
@@ -1340,7 +1374,7 @@ Timer tmSerial
bText2.pco=1374 bText2.pco=1374
bText2.pco2=1374 bText2.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="number") if(type2.txt=="number")
{ {
@@ -1353,7 +1387,7 @@ Timer tmSerial
vis hSlider2,1 vis hSlider2,1
vis nNum2,1 vis nNum2,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
//first value is current value //first value is current value
spstr bText2.txt,tTmp.txt,"|",0 spstr bText2.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1369,9 +1403,9 @@ Timer tmSerial
hSlider2.maxval=sys0 hSlider2.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis bUp3,0 vis bUp3,0
@@ -1386,16 +1420,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1
vis tIcon3,1 vis tIcon3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon3.pco=sys0 tIcon3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
if(type3.txt=="shutter") if(type3.txt=="shutter")
@@ -1418,7 +1452,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -1432,7 +1466,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -1449,7 +1483,7 @@ Timer tmSerial
bText3.pco=65535 bText3.pco=65535
bText3.pco2=65535 bText3.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="button") if(type3.txt=="button")
{ {
@@ -1464,7 +1498,7 @@ Timer tmSerial
bText3.pco=1374 bText3.pco=1374
bText3.pco2=1374 bText3.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="number") if(type3.txt=="number")
{ {
@@ -1477,7 +1511,7 @@ Timer tmSerial
vis hSlider3,1 vis hSlider3,1
vis nNum3,1 vis nNum3,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
//first value is current value //first value is current value
spstr bText3.txt,tTmp.txt,"|",0 spstr bText3.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1493,9 +1527,9 @@ Timer tmSerial
hSlider3.maxval=sys0 hSlider3.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis bUp4,0 vis bUp4,0
@@ -1510,16 +1544,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1
vis tIcon4,1 vis tIcon4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon4.pco=sys0 tIcon4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
if(type4.txt=="shutter") if(type4.txt=="shutter")
@@ -1542,7 +1576,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -1556,7 +1590,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -1573,7 +1607,7 @@ Timer tmSerial
bText4.pco=65535 bText4.pco=65535
bText4.pco2=65535 bText4.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="button") if(type4.txt=="button")
{ {
@@ -1588,7 +1622,7 @@ Timer tmSerial
bText4.pco=1374 bText4.pco=1374
bText4.pco2=1374 bText4.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="number") if(type4.txt=="number")
{ {
@@ -1601,7 +1635,7 @@ Timer tmSerial
vis hSlider4,1 vis hSlider4,1
vis nNum4,1 vis nNum4,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
//first value is current value //first value is current value
spstr bText4.txt,tTmp.txt,"|",0 spstr bText4.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1621,11 +1655,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1675,23 +1709,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -1714,14 +1748,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardEntities"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -242,7 +242,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardGrid,bPrev" tSend.txt="event,buttonPress2,cardGrid,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -563,15 +570,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis tEntity1,0 vis tEntity1,0
@@ -579,22 +613,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1
vis bEntity1,1 vis bEntity1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity1.pco=sys0 bEntity1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis tEntity2,0 vis tEntity2,0
@@ -602,22 +636,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1
vis bEntity2,1 vis bEntity2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity2.pco=sys0 bEntity2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis tEntity3,0 vis tEntity3,0
@@ -625,22 +659,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1
vis bEntity3,1 vis bEntity3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity3.pco=sys0 bEntity3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis tEntity4,0 vis tEntity4,0
@@ -648,22 +682,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1
vis bEntity4,1 vis bEntity4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity4.pco=sys0 bEntity4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis tEntity5,0 vis tEntity5,0
@@ -671,22 +705,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1
vis bEntity5,1 vis bEntity5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity5.pco=sys0 bEntity5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis tEntity6,0 vis tEntity6,0
@@ -694,16 +728,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1
vis bEntity6,1 vis bEntity6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity6.pco=sys0 bEntity6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
} }
@@ -711,11 +745,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -765,23 +799,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -804,14 +838,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardGrid"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -435,7 +435,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardMedia,bPrev" tSend.txt="event,buttonPress2,cardMedia,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -498,31 +505,58 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,"|",1
//heading //heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//title //title
spstr strCommand.txt,tTitle.txt,"|",4 spstr strCommand.txt,tTitle.txt,"~",5
//author //author
spstr strCommand.txt,tAuthor.txt,"|",5 spstr strCommand.txt,tAuthor.txt,"~",6
//volume //volume
spstr strCommand.txt,tTmp.txt,"|",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hVolume.val=sys0 hVolume.val=sys0
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1 substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1
//speaker current //speaker current
spstr strCommand.txt,tSpeaker.txt,"|",8 spstr strCommand.txt,tSpeaker.txt,"~",9
if(tSpeaker.txt!="") if(tSpeaker.txt!="")
{ {
tSpeaker.pco=1374 tSpeaker.pco=1374
@@ -531,14 +565,14 @@ Timer tmSerial
tSpeaker.pco=65535 tSpeaker.pco=65535
} }
//speaker list //speaker list
spstr strCommand.txt,vaSpeakerList.txt,"|",9 spstr strCommand.txt,vaSpeakerList.txt,"~",10
if(vaSpeakerList.txt=="") if(vaSpeakerList.txt=="")
{ {
vis t6,0 vis t6,0
} }
vaSpeakerPos.val=0 vaSpeakerPos.val=0
// on off button // on off button
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",11
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t5,0 vis t5,0
@@ -551,62 +585,75 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
@@ -642,14 +689,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardMedia"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -329,7 +329,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardThermo,bPrev" tSend.txt="event,buttonPress2,cardThermo,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -635,29 +642,56 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,",",1
//heading //heading
spstr strCommand.txt,tHeading.txt,",",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//currentTemp //currentTemp
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,xTempCurr.val,0,0 covx tTmp.txt,xTempCurr.val,0,0
//dstTemp //dstTemp
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,xTempDest.val,0,0 covx tTmp.txt,xTempDest.val,0,0
//status //status
spstr strCommand.txt,tStatus.txt,",",5 spstr strCommand.txt,tStatus.txt,"~",6
//minTemp //minTemp
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,xTempMin.val,0,0 covx tTmp.txt,xTempMin.val,0,0
//maxTemp //maxTemp
spstr strCommand.txt,tTmp.txt,",",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,xTempMax.val,0,0 covx tTmp.txt,xTempMax.val,0,0
//tempStep //tempStep
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,xTempStep.val,0,0 covx tTmp.txt,xTempStep.val,0,0
// disable all buttons // disable all buttons
vis bt0,0 vis bt0,0
@@ -670,232 +704,237 @@ Timer tmSerial
vis bt7,0 vis bt7,0
vis bt8,0 vis bt8,0
//bt0 //bt0
spstr strCommand.txt,tTmp.txt,",",9 spstr strCommand.txt,tTmp.txt,"~",10
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt0.txt,sys0,1 substr pageIcons.tIcons.txt,bt0.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,bt0.pco2,0,0 covx tTmp.txt,bt0.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,bt0.val,0,0 covx tTmp.txt,bt0.val,0,0
// save action // save action
spstr strCommand.txt,va0.txt,",",12 spstr strCommand.txt,va0.txt,"~",13
//enable //enable
vis bt0,1 vis bt0,1
} } //bt1
//bt1 spstr strCommand.txt,tTmp.txt,"~",14
spstr strCommand.txt,tTmp.txt,",",13
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt1.txt,sys0,1 substr pageIcons.tIcons.txt,bt1.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,bt1.pco2,0,0 covx tTmp.txt,bt1.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",15 spstr strCommand.txt,tTmp.txt,"~",16
covx tTmp.txt,bt1.val,0,0 covx tTmp.txt,bt1.val,0,0
// save action // save action
spstr strCommand.txt,va1.txt,",",16 spstr strCommand.txt,va1.txt,"~",17
//enable //enable
vis bt1,1 vis bt1,1
} } //bt2
//bt2 spstr strCommand.txt,tTmp.txt,"~",18
spstr strCommand.txt,tTmp.txt,",",17
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt2.txt,sys0,1 substr pageIcons.tIcons.txt,bt2.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",19
covx tTmp.txt,bt2.pco2,0,0 covx tTmp.txt,bt2.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",19 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,bt2.val,0,0 covx tTmp.txt,bt2.val,0,0
// save action // save action
spstr strCommand.txt,va2.txt,",",20 spstr strCommand.txt,va2.txt,"~",21
//enable //enable
vis bt2,1 vis bt2,1
} } //bt3
//bt3 spstr strCommand.txt,tTmp.txt,"~",22
spstr strCommand.txt,tTmp.txt,",",21
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt3.txt,sys0,1 substr pageIcons.tIcons.txt,bt3.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",22 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,bt3.pco2,0,0 covx tTmp.txt,bt3.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,bt3.val,0,0 covx tTmp.txt,bt3.val,0,0
// save action // save action
spstr strCommand.txt,va3.txt,",",24 spstr strCommand.txt,va3.txt,"~",25
//enable //enable
vis bt3,1 vis bt3,1
} } //bt4
//bt4 spstr strCommand.txt,tTmp.txt,"~",26
spstr strCommand.txt,tTmp.txt,",",25
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt4.txt,sys0,1 substr pageIcons.tIcons.txt,bt4.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",27
covx tTmp.txt,bt4.pco2,0,0 covx tTmp.txt,bt4.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",27 spstr strCommand.txt,tTmp.txt,"~",28
covx tTmp.txt,bt4.val,0,0 covx tTmp.txt,bt4.val,0,0
// save action // save action
spstr strCommand.txt,va4.txt,",",28 spstr strCommand.txt,va4.txt,"~",29
//enable //enable
vis bt4,1 vis bt4,1
} } //bt5
//bt5 spstr strCommand.txt,tTmp.txt,"~",30
spstr strCommand.txt,tTmp.txt,",",29
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt5.txt,sys0,1 substr pageIcons.tIcons.txt,bt5.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",31
covx tTmp.txt,bt5.pco2,0,0 covx tTmp.txt,bt5.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",31 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,bt5.val,0,0 covx tTmp.txt,bt5.val,0,0
// save action // save action
spstr strCommand.txt,va5.txt,",",32 spstr strCommand.txt,va5.txt,"~",33
//enable //enable
vis bt5,1 vis bt5,1
} } //bt6
//bt6 spstr strCommand.txt,tTmp.txt,"~",34
spstr strCommand.txt,tTmp.txt,",",33
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt6.txt,sys0,1 substr pageIcons.tIcons.txt,bt6.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",34 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,bt6.pco2,0,0 covx tTmp.txt,bt6.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,bt6.val,0,0 covx tTmp.txt,bt6.val,0,0
// save action // save action
spstr strCommand.txt,va6.txt,",",36 spstr strCommand.txt,va6.txt,"~",37
//enable //enable
vis bt6,1 vis bt6,1
} } //bt7
//bt7 spstr strCommand.txt,tTmp.txt,"~",38
spstr strCommand.txt,tTmp.txt,",",37
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt7.txt,sys0,1 substr pageIcons.tIcons.txt,bt7.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",39
covx tTmp.txt,bt7.pco2,0,0 covx tTmp.txt,bt7.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",39 spstr strCommand.txt,tTmp.txt,"~",40
covx tTmp.txt,bt7.val,0,0 covx tTmp.txt,bt7.val,0,0
// save action // save action
spstr strCommand.txt,va7.txt,",",40 spstr strCommand.txt,va7.txt,"~",41
//enable //enable
vis bt7,1 vis bt7,1
} } //bt8
//bt8 spstr strCommand.txt,tTmp.txt,"~",42
spstr strCommand.txt,tTmp.txt,",",41
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt8.txt,sys0,1 substr pageIcons.tIcons.txt,bt8.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",42 spstr strCommand.txt,tTmp.txt,"~",43
covx tTmp.txt,bt8.pco2,0,0 covx tTmp.txt,bt8.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",43 spstr strCommand.txt,tTmp.txt,"~",44
covx tTmp.txt,bt8.val,0,0 covx tTmp.txt,bt8.val,0,0
// save action // save action
spstr strCommand.txt,va8.txt,",",44 spstr strCommand.txt,va8.txt,"~",45
//enable //enable
vis bt8,1 vis bt8,1
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,sleepTimeout,0,0
}
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardGrid")
{ {
page cardMedia page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
page cardAlarm page cardAlarm
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0
}
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -916,14 +955,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardThermo"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -10,6 +10,18 @@ Page pageIcons
Swide left page ID : disabled Swide left page ID : disabled
Swide right page ID : disabled Swide right page ID : disabled
Variable (string) vaTime
Attributes
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
Scope : global
Text :
Max. Text Size: 35
Text tIcons Text tIcons
Attributes Attributes
Scope : global Scope : global
@@ -17,8 +29,8 @@ Text tIcons
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 150 Max. Text Size : 170
Text tTmp1 Text tTmp1
Attributes Attributes

View File

@@ -152,7 +152,7 @@ Text tVersion
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 23 Text : 28
Max. Text Size : 10 Max. Text Size : 10
Picture p0 Picture p0
@@ -257,27 +257,27 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
@@ -285,11 +285,11 @@ Timer tmSerial
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -382,7 +382,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -439,24 +438,24 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// get Button State // get Button State
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
// get Brightness value // get Brightness value
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",4
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t1,0 vis t1,0
@@ -474,7 +473,7 @@ Timer tmSerial
} }
} }
// get ColorTemp value // get ColorTemp value
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis hTempSlider,0 vis hTempSlider,0
@@ -518,7 +517,7 @@ Timer tmSerial
} }
} }
// get Color value // get Color value
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
// disable -> isn't supported // disable -> isn't supported
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
@@ -542,34 +541,34 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -195,7 +195,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -252,70 +251,70 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get entn // get entn
spstr strCommand.txt,entn.txt,"|",1 spstr strCommand.txt,entn.txt,"~",1
// get Heading // get Heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",2
// heading color // heading color
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tHeading.pco=sys0 tHeading.pco=sys0
// get b1 // get b1
spstr strCommand.txt,b1.txt,"|",4 spstr strCommand.txt,b1.txt,"~",4
if(b1.txt!="") if(b1.txt!="")
{ {
vis b1,1 vis b1,1
} }
// b1 color // b1 color
spstr strCommand.txt,tTmp.txt,"|",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b1.pco=sys0 b1.pco=sys0
// get b2 // get b2
spstr strCommand.txt,b2.txt,"|",6 spstr strCommand.txt,b2.txt,"~",6
if(b2.txt!="") if(b2.txt!="")
{ {
vis b2,1 vis b2,1
} }
// b2 color // b2 color
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b2.pco=sys0 b2.pco=sys0
// get tText // get tText
spstr strCommand.txt,tText.txt,"|",8 spstr strCommand.txt,tText.txt,"~",8
// tText color // tText color
spstr strCommand.txt,tTmp.txt,"|",9 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tText.pco=sys0 tText.pco=sys0
//preserve old sleepTimeout //preserve old sleepTimeout
vaOldSleepT.val=sleepTimeout vaOldSleepT.val=sleepTimeout
// sleep timeout // sleep timeout
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
sleepTimeout=sys0 sleepTimeout=sys0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="exitPopup") if(tInstruction.txt=="exitPopup")
@@ -327,11 +326,11 @@ Timer tmSerial
sleepTimeout=vaOldSleepT.val sleepTimeout=vaOldSleepT.val
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -268,7 +268,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -325,45 +324,45 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get Position value // get Position value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hPosition.val=sys0 hPosition.val=sys0
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -14,43 +14,22 @@ Page screensaver
Preinitialize Event Preinitialize Event
recmod=1 recmod=1
bauds=115200 bauds=115200
vis originPage,0
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis p0,0 vis p0,0
//load gloabl time string from pageIcons //load gloabl time string from pageIcons
//tTime.txt=vaTime.txt //tTime.txt=vaTime.txt
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
} }
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
dim=dimValue dim=dimValue
vis tSend,0 vis tSend,0
//page open event //page open event
// clear weather elements, to keep example content in HMI // clear weather elements, to keep example content in HMI
tMainIcon.txt=""
tMainText.txt=""
tForecast1.txt=""
tF1Icon.txt=""
tForecast1Val.txt=""
tForecast2.txt=""
tF2Icon.txt=""
tForecast2Val.txt=""
tSend.txt="event,screensaverOpen"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
@@ -58,18 +37,6 @@ Variable (string) strCommand
Text : Text :
Max. Text Size: 200 Max. Text Size: 200
Variable (string) vaTime
Attributes
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
Scope : global
Text :
Max. Text Size: 30
Variable (string) tId Variable (string) tId
Attributes Attributes
Scope : local Scope : local
@@ -81,15 +48,6 @@ Variable (int32) vaTap
Scope: local Scope: local
Value: 0 Value: 0
Number originPage
Attributes
Scope : global
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Value : 0
Text tInstruction Text tInstruction
Attributes Attributes
Scope : local Scope : local
@@ -128,7 +86,7 @@ Text tDate
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Tuesday, 08. March 2022 Text : Tuesday, 08. March 2022
Max. Text Size : 30 Max. Text Size : 35
Text tSend Text tSend
Attributes Attributes
@@ -147,7 +105,7 @@ Text tMainIcon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tMainText Text tMainText
@@ -157,7 +115,7 @@ Text tMainText
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 2,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast1 Text tForecast1
@@ -167,7 +125,7 @@ Text tForecast1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Mi Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast1Val Text tForecast1Val
@@ -177,7 +135,7 @@ Text tForecast1Val
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 9,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text tF1Icon Text tF1Icon
@@ -187,7 +145,7 @@ Text tF1Icon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast2 Text tForecast2
@@ -197,7 +155,7 @@ Text tForecast2
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Do Text :
Max. Text Size : 10 Max. Text Size : 10
Text tF2Icon Text tF2Icon
@@ -207,7 +165,7 @@ Text tF2Icon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast2Val Text tForecast2Val
@@ -217,7 +175,7 @@ Text tForecast2Val
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 11,9 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text t10 Text t10
@@ -288,7 +246,7 @@ Text tF4Icon
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Text :
Max. Text Size : 10 Max. Text Size : 5
Text tForecast4Val Text tForecast4Val
Attributes Attributes
@@ -300,6 +258,46 @@ Text tForecast4Val
Text : Text :
Max. Text Size : 10 Max. Text Size : 10
Text tMainTextAlt
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMainIconAlt
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMRIcon
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMR
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Picture p0 Picture p0
Attributes Attributes
Scope : local Scope : local
@@ -357,7 +355,7 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="wake") if(tInstruction.txt=="wake")
{ {
//dim=100 //dim=100
@@ -366,16 +364,16 @@ Timer tmSerial
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
//get set time to global variable //get set time to global variable
spstr strCommand.txt,vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
@@ -384,66 +382,104 @@ Timer tmSerial
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
//get set date to global variable //get set date to global variable
spstr strCommand.txt,vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="weatherUpdate") if(tInstruction.txt=="weatherUpdate")
{ {
vis tMainIcon,1
vis tMainIconAlt,0
vis tMainText,1
vis tMainTextAlt,0
vis tMRIcon,0
vis tMR,0
//tMainIcon //tMainIcon
spstr strCommand.txt,tTmp.txt,"?",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1
tMainIconAlt.txt=tMainIcon.txt
//tMainText //tMainText
spstr strCommand.txt,tMainText.txt,"?",2 spstr strCommand.txt,tMainText.txt,"~",2
tMainTextAlt.txt=tMainText.txt
//tForecast1 //tForecast1
spstr strCommand.txt,tForecast1.txt,"?",3 spstr strCommand.txt,tForecast1.txt,"~",3
//tF1Icon //tF1Icon
spstr strCommand.txt,tTmp.txt,"?",4 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1
//tForecast1Val //tForecast1Val
spstr strCommand.txt,tForecast1Val.txt,"?",5 spstr strCommand.txt,tForecast1Val.txt,"~",5
//tForecast2 //tForecast2
spstr strCommand.txt,tForecast2.txt,"?",6 spstr strCommand.txt,tForecast2.txt,"~",6
//tF2Icon //tF2Icon
spstr strCommand.txt,tTmp.txt,"?",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1
//tForecast2Val //tForecast2Val
spstr strCommand.txt,tForecast2Val.txt,"?",8 spstr strCommand.txt,tForecast2Val.txt,"~",8
//tForecast3 //tForecast3
spstr strCommand.txt,tForecast3.txt,"?",9 spstr strCommand.txt,tForecast3.txt,"~",9
//tF3Icon //tF3Icon
spstr strCommand.txt,tTmp.txt,"?",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1
//tForecast3Val //tForecast3Val
spstr strCommand.txt,tForecast3Val.txt,"?",11 spstr strCommand.txt,tForecast3Val.txt,"~",11
//tForecast4 //tForecast4
spstr strCommand.txt,tForecast4.txt,"?",12 spstr strCommand.txt,tForecast4.txt,"~",12
//tF4Icon //tF4Icon
spstr strCommand.txt,tTmp.txt,"?",13 spstr strCommand.txt,tTmp.txt,"~",13
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1
//tForecast4Val //tForecast4Val
spstr strCommand.txt,tForecast4Val.txt,"?",14 spstr strCommand.txt,tForecast4Val.txt,"~",14
//alternative layout
//tMRIcon
spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMRIcon.txt,sys0,1
if(tTmp.txt!="")
{
//value for tMRIcon, activate alternative layout
vis tMainIcon,0
vis tMainText,0
vis tMainTextAlt,1
vis tMainIconAlt,1
vis tMRIcon,1
vis tMR,1
vis tForecast1,0
vis tF1Icon,0
vis tForecast1Val,0
//move forecast values to the right
tForecast4.txt=tForecast3.txt
tForecast3.txt=tForecast2.txt
tForecast2.txt=tForecast1.txt
tForecast4Val.txt=tForecast3Val.txt
tForecast3Val.txt=tForecast2Val.txt
tForecast2Val.txt=tForecast1Val.txt
tF4Icon.txt=tF3Icon.txt
tF3Icon.txt=tF2Icon.txt
tF2Icon.txt=tF1Icon.txt
}
//tMR
spstr strCommand.txt,tMR.txt,"~",16
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete u[2]+3 udelete u[2]+3
bufferPos=0 bufferPos=0
@@ -497,6 +533,25 @@ Timer tmSerial
} }
} }
Timer tmSleep
Attributes
Scope : local
Period (ms): 1000
Enabled : yes
Events
Timer Event
if(sleepTimeout!=0&&dimValue!=dim)
{
sleepValue+=1
if(sleepTimeout<=sleepValue)
{
sleepValue=0
dim=dimValue
vaTap.val=0
}
}
TouchCap tc0 TouchCap tc0
Attributes Attributes
Scope: local Scope: local
@@ -504,7 +559,7 @@ TouchCap tc0
Events Events
Touch Press Event Touch Press Event
dim=100 dim=dimValueNormal
vaTap.val+=1 vaTap.val+=1
covx vaTap.val,tTmp.txt,0,0 covx vaTap.val,tTmp.txt,0,0
tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt
@@ -519,6 +574,4 @@ TouchCap tc0
prints sys0,2 prints sys0,2
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
//dim=100
//page originPage.val

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,803 @@
diff -bur HMI/n2t-out/Program.s.txt HMI/US/portrait/n2t-out/Program.s.txt
--- HMI/n2t-out/Program.s.txt 2022-04-01 04:54:12.884151859 +0000
+++ HMI/US/portrait/n2t-out/Program.s.txt 2022-04-01 04:54:13.372185922 +0000
@@ -11,6 +11,6 @@
// dim value
int dimValue=40
int dimValueNormal=100
- // fix touch offset
- lcd_dev fffb 0002 0000 0020
+ // fix touch offset (Removed for US version)
+ //lcd_dev fffb 0002 0000 0020
page pageStartup
diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
--- HMI/n2t-out/cardEntities.txt 2022-04-01 04:54:12.888152138 +0000
+++ HMI/US/portrait/n2t-out/cardEntities.txt 2022-04-01 04:54:13.372185922 +0000
@@ -62,6 +62,26 @@
vis bText4,0
vis hSlider4,0
vis nNum4,0
+ //ui e5
+ vis btOnOff5,0
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis tIcon5,0
+ vis tEntity5,0
+ vis bText5,0
+ vis hSlider5,0
+ vis nNum5,0
+ //ui e6
+ vis btOnOff6,0
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis tIcon6,0
+ vis tEntity6,0
+ vis bText6,0
+ vis hSlider6,0
+ vis nNum6,0
Variable (string) strCommand
Attributes
@@ -117,6 +137,30 @@
Text :
Max. Text Size: 70
+Variable (string) entn5
+ Attributes
+ Scope : local
+ Text :
+ Max. Text Size: 70
+
+Variable (string) entn6
+ Attributes
+ Scope : local
+ Text :
+ Max. Text Size: 70
+
+Variable (string) type5
+ Attributes
+ Scope : local
+ Text :
+ Max. Text Size: 10
+
+Variable (string) type6
+ Attributes
+ Scope : local
+ Text :
+ Max. Text Size: 10
+
Number nNum1
Attributes
Scope : local
@@ -153,6 +197,24 @@
Associated Keyboard : none
Value : 0
+Number nNum5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Value : 0
+
+Number nNum6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Value : 0
+
Text tHeading
Attributes
Scope : local
@@ -283,6 +345,46 @@
Text :
Max. Text Size : 50
+Text tEntity5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Text : tEntity5
+ Max. Text Size : 30
+
+Text tIcon5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Text : 
+ Max. Text Size : 5
+
+Text tEntity6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Text : tEntity6
+ Max. Text Size : 30
+
+Text tIcon6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Text : 
+ Max. Text Size : 5
+
Picture p0
Attributes
Scope : local
@@ -402,6 +504,62 @@
prints tSend.txt,0
prints crcval,2
+Slider hSlider5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Position : 50
+ Upper range limit : 100
+ Lower range limit : 0
+
+ Events
+ Touch Release Event
+ nNum5.val=hSlider5.val
+ tSend.txt="event,buttonPress2,"+entn5.txt+",number-set,"
+ covx nNum5.val,tTmp.txt,0,0
+ tSend.txt+=tTmp.txt
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Slider hSlider6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Position : 50
+ Upper range limit : 100
+ Lower range limit : 0
+
+ Events
+ Touch Release Event
+ nNum6.val=hSlider6.val
+ tSend.txt="event,buttonPress2,"+entn6.txt+",number-set,"
+ covx nNum6.val,tTmp.txt,0,0
+ tSend.txt+=tTmp.txt
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
Button bDown1
Attributes
Scope : local
@@ -857,6 +1015,206 @@
prints tSend.txt,0
prints crcval,2
+Button bStop5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : 
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn5.txt+",stop"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bDown5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : 
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn5.txt+",down"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bUp5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : 
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn5.txt+",up"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bText5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : newtxt
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn5.txt+",button"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bStop6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : 
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn6.txt+",stop"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bDown6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : 
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn6.txt+",down"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bUp6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : 
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn6.txt+",up"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Button bText6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text : newtxt
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn6.txt+",button"
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
Dual-state Button btOnOff1
Attributes
Scope : local
@@ -965,6 +1323,60 @@
prints tSend.txt,0
prints crcval,2
+Dual-state Button btOnOff5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text :
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn5.txt+",OnOff,"
+ covx btOnOff5.val,tTmp.txt,0,0
+ tSend.txt+=tTmp.txt
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
+Dual-state Button btOnOff6
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ State : unpressed
+ Text :
+ Max. Text Size : 10
+
+ Events
+ Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn6.txt+",OnOff,"
+ covx btOnOff6.val,tTmp.txt,0,0
+ tSend.txt+=tTmp.txt
+ //send calc crc
+ btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC
+ crcputh 55 bb
+ crcputs sys0,1
+ crcputs tSend.txt,0
+ //send cmd
+ printh 55 bb
+ prints sys0,2
+ prints tSend.txt,0
+ prints crcval,2
+
Hotspot mSpecial
Attributes
Scope : local
@@ -1070,6 +1482,50 @@
page popupLight
}
+Hotspot m4
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+
+ Events
+ Touch Press Event
+ pageIcons.tTmp1.txt=tEntity5.txt
+ pageIcons.tTmp2.txt=entn5.txt
+ if(type5.txt=="shutter")
+ {
+ //popupShutter.tHeading.txt=tEntity5.txt
+ page popupShutter
+ }
+ if(type5.txt=="light")
+ {
+ //popupLight.tEntity.txt=tEntity5.txt
+ page popupLight
+ }
+
+Hotspot m5
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+
+ Events
+ Touch Press Event
+ pageIcons.tTmp1.txt=tEntity6.txt
+ pageIcons.tTmp2.txt=entn6.txt
+ if(type6.txt=="shutter")
+ {
+ //popupShutter.tHeading.txt=tEntity6.txt
+ page popupShutter
+ }
+ if(type6.txt=="light")
+ {
+ //popupLight.tEntity.txt=tEntity6.txt
+ page popupLight
+ }
+
Timer tmSerial
Attributes
Scope : local
@@ -1648,6 +2104,254 @@
covx tTmp.txt,sys0,0,0
hSlider4.maxval=sys0
}
+ // get Type
+ spstr strCommand.txt,type5.txt,",",27
+ // get internal name
+ spstr strCommand.txt,entn5.txt,",",28
+ if(type5.txt=="delete"||type5.txt=="")
+ {
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis btOnOff5,0
+ vis tEntity5,0
+ vis tIcon5,0
+ vis bText5,0
+ vis hSlider5,0
+ vis nNum5,0
+ }else
+ {
+ // change icon
+ spstr strCommand.txt,tTmp.txt,",",29
+ covx tTmp.txt,sys0,0,0
+ substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1
+ vis tIcon5,1
+ // change icon color
+ spstr strCommand.txt,tTmp.txt,",",30
+ covx tTmp.txt,sys0,0,0
+ tIcon5.pco=sys0
+ // set name
+ spstr strCommand.txt,tEntity5.txt,",",31
+ vis tEntity5,1
+ }
+ if(type5.txt=="shutter")
+ {
+ vis bUp5,1
+ vis bStop5,1
+ vis bDown5,1
+ vis btOnOff5,0
+ vis bText5,0
+ vis hSlider5,0
+ vis nNum5,0
+ }
+ if(type5.txt=="light")
+ {
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis btOnOff5,1
+ vis bText5,0
+ vis hSlider5,0
+ vis nNum5,0
+ // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",32
+ covx tTmp.txt,sys0,0,0
+ btOnOff5.val=sys0
+ }
+ if(type5.txt=="switch")
+ {
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis btOnOff5,1
+ vis bText5,0
+ vis hSlider5,0
+ vis nNum5,0
+ // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",32
+ covx tTmp.txt,sys0,0,0
+ btOnOff5.val=sys0
+ }
+ if(type5.txt=="text")
+ {
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis btOnOff5,0
+ vis bText5,1
+ tsw bText5,0
+ vis hSlider5,0
+ vis nNum5,0
+ bText5.pco=65535
+ bText5.pco2=65535
+ // get Text (optional Value)
+ spstr strCommand.txt,bText5.txt,",",32
+ }
+ if(type5.txt=="button")
+ {
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis btOnOff5,0
+ vis bText5,1
+ tsw bText5,1
+ vis hSlider5,0
+ vis nNum5,0
+ bText5.pco=1374
+ bText5.pco2=1374
+ // get Text (optional Value)
+ spstr strCommand.txt,bText5.txt,",",32
+ }
+ if(type5.txt=="number")
+ {
+ vis bUp5,0
+ vis bStop5,0
+ vis bDown5,0
+ vis btOnOff5,0
+ vis bText5,0
+ tsw bText5,0
+ vis hSlider5,1
+ vis nNum5,1
+ // get config (optional Value) (use bText as variable)
+ spstr strCommand.txt,bText5.txt,",",32
+ //first value is current value
+ spstr bText5.txt,tTmp.txt,"|",0
+ covx tTmp.txt,sys0,0,0
+ hSlider5.val=sys0
+ nNum5.val=sys0
+ //second value is min value
+ spstr bText5.txt,tTmp.txt,"|",1
+ covx tTmp.txt,sys0,0,0
+ hSlider5.minval=sys0
+ //third value is max value
+ spstr bText5.txt,tTmp.txt,"|",2
+ covx tTmp.txt,sys0,0,0
+ hSlider5.maxval=sys0
+ }
+ // get Type
+ spstr strCommand.txt,type6.txt,",",33
+ // get internal name
+ spstr strCommand.txt,entn6.txt,",",34
+ if(type6.txt=="delete"||type6.txt=="")
+ {
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis btOnOff6,0
+ vis tEntity6,0
+ vis tIcon6,0
+ vis bText6,0
+ vis hSlider6,0
+ vis nNum6,0
+ }else
+ {
+ // change icon
+ spstr strCommand.txt,tTmp.txt,",",35
+ covx tTmp.txt,sys0,0,0
+ substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1
+ vis tIcon6,1
+ // change icon color
+ spstr strCommand.txt,tTmp.txt,",",36
+ covx tTmp.txt,sys0,0,0
+ tIcon6.pco=sys0
+ // set name
+ spstr strCommand.txt,tEntity6.txt,",",37
+ vis tEntity6,1
+ }
+ if(type6.txt=="shutter")
+ {
+ vis bUp6,1
+ vis bStop6,1
+ vis bDown6,1
+ vis btOnOff6,0
+ vis bText6,0
+ vis hSlider6,0
+ vis nNum6,0
+ }
+ if(type6.txt=="light")
+ {
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis btOnOff6,1
+ vis bText6,0
+ vis hSlider6,0
+ vis nNum6,0
+ // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",38
+ covx tTmp.txt,sys0,0,0
+ btOnOff6.val=sys0
+ }
+ if(type6.txt=="switch")
+ {
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis btOnOff6,1
+ vis bText6,0
+ vis hSlider6,0
+ vis nNum6,0
+ // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",38
+ covx tTmp.txt,sys0,0,0
+ btOnOff6.val=sys0
+ }
+ if(type6.txt=="text")
+ {
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis btOnOff6,0
+ vis bText6,1
+ tsw bText6,0
+ vis hSlider6,0
+ vis nNum6,0
+ bText6.pco=65535
+ bText6.pco2=65535
+ // get Text (optional Value)
+ spstr strCommand.txt,bText6.txt,",",38
+ }
+ if(type6.txt=="button")
+ {
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis btOnOff6,0
+ vis bText6,1
+ tsw bText6,1
+ vis hSlider6,0
+ vis nNum6,0
+ bText6.pco=1374
+ bText6.pco2=1374
+ // get Text (optional Value)
+ spstr strCommand.txt,bText6.txt,",",38
+ }
+ if(type6.txt=="number")
+ {
+ vis bUp6,0
+ vis bStop6,0
+ vis bDown6,0
+ vis btOnOff6,0
+ vis bText6,0
+ tsw bText6,0
+ vis hSlider6,1
+ vis nNum6,1
+ // get config (optional Value) (use bText as variable)
+ spstr strCommand.txt,bText6.txt,",",38
+ //first value is current value
+ spstr bText6.txt,tTmp.txt,"|",0
+ covx tTmp.txt,sys0,0,0
+ hSlider6.val=sys0
+ nNum6.val=sys0
+ //second value is min value
+ spstr bText6.txt,tTmp.txt,"|",1
+ covx tTmp.txt,sys0,0,0
+ hSlider6.minval=sys0
+ //third value is max value
+ spstr bText6.txt,tTmp.txt,"|",2
+ covx tTmp.txt,sys0,0,0
+ hSlider6.maxval=sys0
+ }
}
if(tInstruction.txt=="pageType")
{
diff -bur HMI/n2t-out/pageStartup.txt HMI/US/portrait/n2t-out/pageStartup.txt
--- HMI/n2t-out/pageStartup.txt 2022-04-01 04:54:12.884151859 +0000
+++ HMI/US/portrait/n2t-out/pageStartup.txt 2022-04-01 04:54:13.372185922 +0000
@@ -142,7 +142,7 @@
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
- Text : please check your backend configuration
+ Text : pls check your backend configuration
Max. Text Size : 100
Text tVersion
@@ -177,7 +177,7 @@
recmod=1
bauds=115200
// startup event
- tSend.txt="event,startup,"+tVersion.txt+",eu"
+ tSend.txt="event,startup,"+tVersion.txt+",us-p"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC

View File

@@ -1,18 +1,18 @@
diff -bur HMI/n2t-out/Program.s.txt HMI/US/portrait/n2t-out/Program.s.txt diff -bur HMI/n2t-out/Program.s.txt HMI/US/portrait/n2t-out/Program.s.txt
--- HMI/n2t-out/Program.s.txt 2022-03-30 09:17:12.762388734 +0000 --- HMI/n2t-out/Program.s.txt 2022-04-03 07:35:47.898571291 +0000
+++ HMI/US/portrait/n2t-out/Program.s.txt 2022-03-30 09:17:13.206389440 +0000 +++ HMI/US/portrait/n2t-out/Program.s.txt 2022-04-03 07:35:48.266571453 +0000
@@ -10,6 +10,6 @@ @@ -11,6 +11,6 @@
int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
- // fix touch offset - // fix touch offset
- lcd_dev fffb 0002 0000 0020 - lcd_dev fffb 0002 0000 0020
+ // fix touch offset (Removed for US version) + // fix touch offset (Removed for US version)
+ //lcd_dev fffb 0002 0000 0020 + //lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup
diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
--- HMI/n2t-out/cardEntities.txt 2022-03-30 09:17:12.766388740 +0000 --- HMI/n2t-out/cardEntities.txt 2022-04-03 07:35:47.902571293 +0000
+++ HMI/US/portrait/n2t-out/cardEntities.txt 2022-03-30 09:17:13.206389440 +0000 +++ HMI/US/portrait/n2t-out/cardEntities.txt 2022-04-03 07:35:48.266571453 +0000
@@ -62,6 +62,26 @@ @@ -62,6 +62,26 @@
vis bText4,0 vis bText4,0
vis hSlider4,0 vis hSlider4,0
@@ -118,7 +118,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ Send Component ID : disabled + Send Component ID : disabled
+ Associated Keyboard : none + Associated Keyboard : none
+ Text :  + Text : 
+ Max. Text Size : 30 + Max. Text Size : 5
+ +
+Text tEntity6 +Text tEntity6
+ Attributes + Attributes
@@ -138,7 +138,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ Send Component ID : disabled + Send Component ID : disabled
+ Associated Keyboard : none + Associated Keyboard : none
+ Text :  + Text : 
+ Max. Text Size : 30 + Max. Text Size : 5
+ +
Picture p0 Picture p0
Attributes Attributes
@@ -206,7 +206,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
Button bDown1 Button bDown1
Attributes Attributes
Scope : local Scope : local
@@ -852,6 +1010,206 @@ @@ -859,6 +1017,206 @@
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
@@ -247,7 +247,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ +
+ Events + Events
+ Touch Press Event + Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn4.txt+",down" + tSend.txt="event,buttonPress2,"+entn5.txt+",down"
+ //send calc crc + //send calc crc
+ btlen tSend.txt,sys0 + btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC + crcrest 1,0xffff // reset CRC
@@ -347,7 +347,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ +
+ Events + Events
+ Touch Press Event + Touch Press Event
+ tSend.txt="event,buttonPress2,"+entn4.txt+",down" + tSend.txt="event,buttonPress2,"+entn6.txt+",down"
+ //send calc crc + //send calc crc
+ btlen tSend.txt,sys0 + btlen tSend.txt,sys0
+ crcrest 1,0xffff // reset CRC + crcrest 1,0xffff // reset CRC
@@ -413,7 +413,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
Dual-state Button btOnOff1 Dual-state Button btOnOff1
Attributes Attributes
Scope : local Scope : local
@@ -960,6 +1318,60 @@ @@ -967,6 +1325,60 @@
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
@@ -474,7 +474,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
Hotspot mSpecial Hotspot mSpecial
Attributes Attributes
Scope : local Scope : local
@@ -1065,6 +1477,50 @@ @@ -1072,6 +1484,50 @@
page popupLight page popupLight
} }
@@ -525,14 +525,14 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
Timer tmSerial Timer tmSerial
Attributes Attributes
Scope : local Scope : local
@@ -1616,6 +2072,254 @@ @@ -1650,6 +2106,254 @@
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hSlider4.maxval=sys0 hSlider4.maxval=sys0
} }
+ // get Type + // get Type
+ spstr strCommand.txt,type5.txt,",",27 + spstr strCommand.txt,type5.txt,"~",27
+ // get internal name + // get internal name
+ spstr strCommand.txt,entn5.txt,",",28 + spstr strCommand.txt,entn5.txt,"~",28
+ if(type5.txt=="delete"||type5.txt=="") + if(type5.txt=="delete"||type5.txt=="")
+ { + {
+ vis bUp5,0 + vis bUp5,0
@@ -547,16 +547,16 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ }else + }else
+ { + {
+ // change icon + // change icon
+ spstr strCommand.txt,tTmp.txt,",",29 + spstr strCommand.txt,tTmp.txt,"~",29
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1 + substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1
+ vis tIcon5,1 + vis tIcon5,1
+ // change icon color + // change icon color
+ spstr strCommand.txt,tTmp.txt,",",30 + spstr strCommand.txt,tTmp.txt,"~",30
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ tIcon5.pco=sys0 + tIcon5.pco=sys0
+ // set name + // set name
+ spstr strCommand.txt,tEntity5.txt,",",31 + spstr strCommand.txt,tEntity5.txt,"~",31
+ vis tEntity5,1 + vis tEntity5,1
+ } + }
+ if(type5.txt=="shutter") + if(type5.txt=="shutter")
@@ -579,7 +579,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ vis hSlider5,0 + vis hSlider5,0
+ vis nNum5,0 + vis nNum5,0
+ // get Button State (optional Value) + // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",32 + spstr strCommand.txt,tTmp.txt,"~",32
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ btOnOff5.val=sys0 + btOnOff5.val=sys0
+ } + }
@@ -593,7 +593,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ vis hSlider5,0 + vis hSlider5,0
+ vis nNum5,0 + vis nNum5,0
+ // get Button State (optional Value) + // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",32 + spstr strCommand.txt,tTmp.txt,"~",32
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ btOnOff5.val=sys0 + btOnOff5.val=sys0
+ } + }
@@ -610,7 +610,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ bText5.pco=65535 + bText5.pco=65535
+ bText5.pco2=65535 + bText5.pco2=65535
+ // get Text (optional Value) + // get Text (optional Value)
+ spstr strCommand.txt,bText5.txt,",",32 + spstr strCommand.txt,bText5.txt,"~",32
+ } + }
+ if(type5.txt=="button") + if(type5.txt=="button")
+ { + {
@@ -625,7 +625,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ bText5.pco=1374 + bText5.pco=1374
+ bText5.pco2=1374 + bText5.pco2=1374
+ // get Text (optional Value) + // get Text (optional Value)
+ spstr strCommand.txt,bText5.txt,",",32 + spstr strCommand.txt,bText5.txt,"~",32
+ } + }
+ if(type5.txt=="number") + if(type5.txt=="number")
+ { + {
@@ -638,7 +638,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ vis hSlider5,1 + vis hSlider5,1
+ vis nNum5,1 + vis nNum5,1
+ // get config (optional Value) (use bText as variable) + // get config (optional Value) (use bText as variable)
+ spstr strCommand.txt,bText5.txt,",",32 + spstr strCommand.txt,bText5.txt,"~",32
+ //first value is current value + //first value is current value
+ spstr bText5.txt,tTmp.txt,"|",0 + spstr bText5.txt,tTmp.txt,"|",0
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
@@ -654,9 +654,9 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ hSlider5.maxval=sys0 + hSlider5.maxval=sys0
+ } + }
+ // get Type + // get Type
+ spstr strCommand.txt,type6.txt,",",33 + spstr strCommand.txt,type6.txt,"~",33
+ // get internal name + // get internal name
+ spstr strCommand.txt,entn6.txt,",",34 + spstr strCommand.txt,entn6.txt,"~",34
+ if(type6.txt=="delete"||type6.txt=="") + if(type6.txt=="delete"||type6.txt=="")
+ { + {
+ vis bUp6,0 + vis bUp6,0
@@ -671,16 +671,16 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ }else + }else
+ { + {
+ // change icon + // change icon
+ spstr strCommand.txt,tTmp.txt,",",35 + spstr strCommand.txt,tTmp.txt,"~",35
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1 + substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1
+ vis tIcon6,1 + vis tIcon6,1
+ // change icon color + // change icon color
+ spstr strCommand.txt,tTmp.txt,",",36 + spstr strCommand.txt,tTmp.txt,"~",36
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ tIcon6.pco=sys0 + tIcon6.pco=sys0
+ // set name + // set name
+ spstr strCommand.txt,tEntity6.txt,",",37 + spstr strCommand.txt,tEntity6.txt,"~",37
+ vis tEntity6,1 + vis tEntity6,1
+ } + }
+ if(type6.txt=="shutter") + if(type6.txt=="shutter")
@@ -703,7 +703,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ vis hSlider6,0 + vis hSlider6,0
+ vis nNum6,0 + vis nNum6,0
+ // get Button State (optional Value) + // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",38 + spstr strCommand.txt,tTmp.txt,"~",38
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ btOnOff6.val=sys0 + btOnOff6.val=sys0
+ } + }
@@ -717,7 +717,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ vis hSlider6,0 + vis hSlider6,0
+ vis nNum6,0 + vis nNum6,0
+ // get Button State (optional Value) + // get Button State (optional Value)
+ spstr strCommand.txt,tTmp.txt,",",38 + spstr strCommand.txt,tTmp.txt,"~",38
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ btOnOff6.val=sys0 + btOnOff6.val=sys0
+ } + }
@@ -734,7 +734,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ bText6.pco=65535 + bText6.pco=65535
+ bText6.pco2=65535 + bText6.pco2=65535
+ // get Text (optional Value) + // get Text (optional Value)
+ spstr strCommand.txt,bText6.txt,",",38 + spstr strCommand.txt,bText6.txt,"~",38
+ } + }
+ if(type6.txt=="button") + if(type6.txt=="button")
+ { + {
@@ -749,7 +749,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ bText6.pco=1374 + bText6.pco=1374
+ bText6.pco2=1374 + bText6.pco2=1374
+ // get Text (optional Value) + // get Text (optional Value)
+ spstr strCommand.txt,bText6.txt,",",38 + spstr strCommand.txt,bText6.txt,"~",38
+ } + }
+ if(type6.txt=="number") + if(type6.txt=="number")
+ { + {
@@ -762,7 +762,7 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
+ vis hSlider6,1 + vis hSlider6,1
+ vis nNum6,1 + vis nNum6,1
+ // get config (optional Value) (use bText as variable) + // get config (optional Value) (use bText as variable)
+ spstr strCommand.txt,bText6.txt,",",38 + spstr strCommand.txt,bText6.txt,"~",38
+ //first value is current value + //first value is current value
+ spstr bText6.txt,tTmp.txt,"|",0 + spstr bText6.txt,tTmp.txt,"|",0
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
@@ -780,36 +780,9 @@ diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
diff -bur HMI/n2t-out/cardThermo.txt HMI/US/portrait/n2t-out/cardThermo.txt
--- HMI/n2t-out/cardThermo.txt 2022-03-30 09:17:12.766388740 +0000
+++ HMI/US/portrait/n2t-out/cardThermo.txt 2022-03-30 09:17:13.206389440 +0000
@@ -17,6 +17,7 @@
vis tInstruction,0
vis tTmp,0
vis tId,0
+ vis nPageDisp,0
vis xTempMin,0
vis xTempMax,0
vis xTempStep,0
@@ -98,6 +99,15 @@
Text :
Max. Text Size: 10
+Number nPageDisp
+ Attributes
+ Scope : local
+ Dragging : 0
+ Disable release event after dragging: 0
+ Send Component ID : disabled
+ Associated Keyboard : none
+ Value : 0
+
XFloat xTempCurr
Attributes
Scope : local
diff -bur HMI/n2t-out/pageStartup.txt HMI/US/portrait/n2t-out/pageStartup.txt diff -bur HMI/n2t-out/pageStartup.txt HMI/US/portrait/n2t-out/pageStartup.txt
--- HMI/n2t-out/pageStartup.txt 2022-03-30 09:17:12.762388734 +0000 --- HMI/n2t-out/pageStartup.txt 2022-04-03 07:35:47.902571293 +0000
+++ HMI/US/portrait/n2t-out/pageStartup.txt 2022-03-30 09:17:13.206389440 +0000 +++ HMI/US/portrait/n2t-out/pageStartup.txt 2022-04-03 07:35:48.266571453 +0000
@@ -142,7 +142,7 @@ @@ -142,7 +142,7 @@
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled

View File

@@ -10,6 +10,7 @@ Program.s
int sleepValue=0 int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
// fix touch offset (Removed for US version) // fix touch offset (Removed for US version)
//lcd_dev fffb 0002 0000 0020 //lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup

View File

@@ -25,7 +25,6 @@ Page cardAlarm
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
//vis nPageDisp,0
vis arm1,0 vis arm1,0
vis arm2,0 vis arm2,0
vis arm3,0 vis arm3,0
@@ -340,7 +339,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardAlarm,bPrev" tSend.txt="event,buttonPress2,cardAlarm,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1038,53 +1044,80 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entn //entn
spstr strCommand.txt,entn.txt,",",1 spstr strCommand.txt,entn.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//text arm1 //text arm1
spstr strCommand.txt,arm1.txt,",",2 spstr strCommand.txt,arm1.txt,"~",3
if(arm1.txt!="") if(arm1.txt!="")
{ {
vis arm1,1 vis arm1,1
} }
//id arm1 //id arm1
spstr strCommand.txt,va1.txt,",",3 spstr strCommand.txt,va1.txt,"~",4
//text arm2 //text arm2
spstr strCommand.txt,arm2.txt,",",4 spstr strCommand.txt,arm2.txt,"~",5
if(arm2.txt!="") if(arm2.txt!="")
{ {
vis arm2,1 vis arm2,1
} }
//id arm2 //id arm2
spstr strCommand.txt,va2.txt,",",5 spstr strCommand.txt,va2.txt,"~",6
//text arm3 //text arm3
spstr strCommand.txt,arm3.txt,",",6 spstr strCommand.txt,arm3.txt,"~",7
if(arm3.txt!="") if(arm3.txt!="")
{ {
vis arm3,1 vis arm3,1
} }
//id arm3 //id arm3
spstr strCommand.txt,va3.txt,",",7 spstr strCommand.txt,va3.txt,"~",8
//text arm4 //text arm4
spstr strCommand.txt,arm4.txt,",",8 spstr strCommand.txt,arm4.txt,"~",9
if(arm4.txt!="") if(arm4.txt!="")
{ {
vis arm4,1 vis arm4,1
} }
//id arm4 //id arm4
spstr strCommand.txt,va4.txt,",",9 spstr strCommand.txt,va4.txt,"~",10
//icon //icon
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//icon color //icon color
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon.pco=sys0 tIcon.pco=sys0
//numpad status //numpad status
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",13
if(tTmp.txt!="disable") if(tTmp.txt!="disable")
{ {
vis b0,1 vis b0,1
@@ -1099,9 +1132,23 @@ Timer tmSerial
vis b9,1 vis b9,1
vis b10,1 vis b10,1
vis tCode,1 vis tCode,1
}else
{
vis b0,0
vis b1,0
vis b2,0
vis b3,0
vis b4,0
vis b5,0
vis b6,0
vis b7,0
vis b8,0
vis b9,0
vis b10,0
vis tCode,0
} }
//flashing status //flashing status
spstr strCommand.txt,tTmp.txt,",",13 spstr strCommand.txt,tTmp.txt,"~",14
if(tTmp.txt=="enable") if(tTmp.txt=="enable")
{ {
tmFlash.en=1 tmFlash.en=1
@@ -1113,67 +1160,80 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardMedia")
{ {
page cardMedia page cardMedia
} }
if(tId.txt=="cardAlarm")
{
page cardAlarm
}
} }
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
@@ -1196,14 +1256,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardAlarm"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -400,8 +400,8 @@ Text tEntity1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 77 x coordinate : 52
y coordinate : 95 y coordinate : 93
Width : 180 Width : 180
Height : 30 Height : 30
Effect : load Effect : load
@@ -430,8 +430,8 @@ Text tEntity2
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 78 x coordinate : 52
y coordinate : 164 y coordinate : 162
Width : 180 Width : 180
Height : 30 Height : 30
Effect : load Effect : load
@@ -460,8 +460,8 @@ Text tEntity3
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 78 x coordinate : 52
y coordinate : 231 y coordinate : 229
Width : 180 Width : 180
Height : 30 Height : 30
Effect : load Effect : load
@@ -490,7 +490,7 @@ Text tEntity4
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 78 x coordinate : 52
y coordinate : 296 y coordinate : 296
Width : 180 Width : 180
Height : 30 Height : 30
@@ -520,7 +520,7 @@ Text tIcon1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 5
y coordinate : 94 y coordinate : 94
Width : 45 Width : 45
Height : 30 Height : 30
@@ -537,7 +537,7 @@ Text tIcon1
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -550,7 +550,7 @@ Text tIcon2
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 5
y coordinate : 163 y coordinate : 163
Width : 45 Width : 45
Height : 30 Height : 30
@@ -567,7 +567,7 @@ Text tIcon2
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -580,7 +580,7 @@ Text tIcon3
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 5
y coordinate : 230 y coordinate : 230
Width : 45 Width : 45
Height : 30 Height : 30
@@ -597,7 +597,7 @@ Text tIcon3
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -610,7 +610,7 @@ Text tIcon4
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 5
y coordinate : 296 y coordinate : 296
Width : 45 Width : 45
Height : 30 Height : 30
@@ -627,7 +627,7 @@ Text tIcon4
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -760,8 +760,8 @@ Text tEntity5
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 78 x coordinate : 52
y coordinate : 360 y coordinate : 359
Width : 180 Width : 180
Height : 30 Height : 30
Effect : load Effect : load
@@ -790,7 +790,7 @@ Text tIcon5
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 5
y coordinate : 360 y coordinate : 360
Width : 45 Width : 45
Height : 30 Height : 30
@@ -807,7 +807,7 @@ Text tIcon5
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -820,8 +820,8 @@ Text tEntity6
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 78 x coordinate : 52
y coordinate : 425 y coordinate : 424
Width : 180 Width : 180
Height : 30 Height : 30
Effect : load Effect : load
@@ -850,7 +850,7 @@ Text tIcon6
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 25 x coordinate : 5
y coordinate : 425 y coordinate : 425
Width : 45 Width : 45
Height : 30 Height : 30
@@ -867,7 +867,7 @@ Text tIcon6
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -897,7 +897,7 @@ Slider hSlider1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 168 x coordinate : 170
y coordinate : 88 y coordinate : 88
Width : 100 Width : 100
Height : 43 Height : 43
@@ -1745,7 +1745,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardEntities,bPrev" tSend.txt="event,buttonPress2,cardEntities,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -2074,7 +2081,7 @@ Button bDown5
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,"+entn4.txt+",down" tSend.txt="event,buttonPress2,"+entn5.txt+",down"
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -2262,7 +2269,7 @@ Button bDown6
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,"+entn4.txt+",down" tSend.txt="event,buttonPress2,"+entn6.txt+",down"
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -2902,15 +2909,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis bUp1,0 vis bUp1,0
@@ -2925,16 +2959,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
if(type1.txt=="shutter") if(type1.txt=="shutter")
@@ -2957,7 +2991,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -2971,7 +3005,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -2988,7 +3022,7 @@ Timer tmSerial
bText1.pco=65535 bText1.pco=65535
bText1.pco2=65535 bText1.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="button") if(type1.txt=="button")
{ {
@@ -3003,7 +3037,7 @@ Timer tmSerial
bText1.pco=1374 bText1.pco=1374
bText1.pco2=1374 bText1.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="number") if(type1.txt=="number")
{ {
@@ -3016,7 +3050,7 @@ Timer tmSerial
vis hSlider1,1 vis hSlider1,1
vis nNum1,1 vis nNum1,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
//first value is current value //first value is current value
spstr bText1.txt,tTmp.txt,"|",0 spstr bText1.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -3032,9 +3066,9 @@ Timer tmSerial
hSlider1.maxval=sys0 hSlider1.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis bUp2,0 vis bUp2,0
@@ -3049,16 +3083,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1
vis tIcon2,1 vis tIcon2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon2.pco=sys0 tIcon2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
if(type2.txt=="shutter") if(type2.txt=="shutter")
@@ -3081,7 +3115,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -3095,7 +3129,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -3112,7 +3146,7 @@ Timer tmSerial
bText2.pco=65535 bText2.pco=65535
bText2.pco2=65535 bText2.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="button") if(type2.txt=="button")
{ {
@@ -3127,7 +3161,7 @@ Timer tmSerial
bText2.pco=1374 bText2.pco=1374
bText2.pco2=1374 bText2.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="number") if(type2.txt=="number")
{ {
@@ -3140,7 +3174,7 @@ Timer tmSerial
vis hSlider2,1 vis hSlider2,1
vis nNum2,1 vis nNum2,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
//first value is current value //first value is current value
spstr bText2.txt,tTmp.txt,"|",0 spstr bText2.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -3156,9 +3190,9 @@ Timer tmSerial
hSlider2.maxval=sys0 hSlider2.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis bUp3,0 vis bUp3,0
@@ -3173,16 +3207,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1
vis tIcon3,1 vis tIcon3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon3.pco=sys0 tIcon3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
if(type3.txt=="shutter") if(type3.txt=="shutter")
@@ -3205,7 +3239,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -3219,7 +3253,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -3236,7 +3270,7 @@ Timer tmSerial
bText3.pco=65535 bText3.pco=65535
bText3.pco2=65535 bText3.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="button") if(type3.txt=="button")
{ {
@@ -3251,7 +3285,7 @@ Timer tmSerial
bText3.pco=1374 bText3.pco=1374
bText3.pco2=1374 bText3.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="number") if(type3.txt=="number")
{ {
@@ -3264,7 +3298,7 @@ Timer tmSerial
vis hSlider3,1 vis hSlider3,1
vis nNum3,1 vis nNum3,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
//first value is current value //first value is current value
spstr bText3.txt,tTmp.txt,"|",0 spstr bText3.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -3280,9 +3314,9 @@ Timer tmSerial
hSlider3.maxval=sys0 hSlider3.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis bUp4,0 vis bUp4,0
@@ -3297,16 +3331,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1
vis tIcon4,1 vis tIcon4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon4.pco=sys0 tIcon4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
if(type4.txt=="shutter") if(type4.txt=="shutter")
@@ -3329,7 +3363,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -3343,7 +3377,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -3360,7 +3394,7 @@ Timer tmSerial
bText4.pco=65535 bText4.pco=65535
bText4.pco2=65535 bText4.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="button") if(type4.txt=="button")
{ {
@@ -3375,7 +3409,7 @@ Timer tmSerial
bText4.pco=1374 bText4.pco=1374
bText4.pco2=1374 bText4.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="number") if(type4.txt=="number")
{ {
@@ -3388,7 +3422,7 @@ Timer tmSerial
vis hSlider4,1 vis hSlider4,1
vis nNum4,1 vis nNum4,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
//first value is current value //first value is current value
spstr bText4.txt,tTmp.txt,"|",0 spstr bText4.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -3404,9 +3438,9 @@ Timer tmSerial
hSlider4.maxval=sys0 hSlider4.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis bUp5,0 vis bUp5,0
@@ -3421,16 +3455,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1
vis tIcon5,1 vis tIcon5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon5.pco=sys0 tIcon5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
if(type5.txt=="shutter") if(type5.txt=="shutter")
@@ -3453,7 +3487,7 @@ Timer tmSerial
vis hSlider5,0 vis hSlider5,0
vis nNum5,0 vis nNum5,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",32 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff5.val=sys0 btOnOff5.val=sys0
} }
@@ -3467,7 +3501,7 @@ Timer tmSerial
vis hSlider5,0 vis hSlider5,0
vis nNum5,0 vis nNum5,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",32 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff5.val=sys0 btOnOff5.val=sys0
} }
@@ -3484,7 +3518,7 @@ Timer tmSerial
bText5.pco=65535 bText5.pco=65535
bText5.pco2=65535 bText5.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText5.txt,",",32 spstr strCommand.txt,bText5.txt,"~",32
} }
if(type5.txt=="button") if(type5.txt=="button")
{ {
@@ -3499,7 +3533,7 @@ Timer tmSerial
bText5.pco=1374 bText5.pco=1374
bText5.pco2=1374 bText5.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText5.txt,",",32 spstr strCommand.txt,bText5.txt,"~",32
} }
if(type5.txt=="number") if(type5.txt=="number")
{ {
@@ -3512,7 +3546,7 @@ Timer tmSerial
vis hSlider5,1 vis hSlider5,1
vis nNum5,1 vis nNum5,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText5.txt,",",32 spstr strCommand.txt,bText5.txt,"~",32
//first value is current value //first value is current value
spstr bText5.txt,tTmp.txt,"|",0 spstr bText5.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -3528,9 +3562,9 @@ Timer tmSerial
hSlider5.maxval=sys0 hSlider5.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis bUp6,0 vis bUp6,0
@@ -3545,16 +3579,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1
vis tIcon6,1 vis tIcon6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon6.pco=sys0 tIcon6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
if(type6.txt=="shutter") if(type6.txt=="shutter")
@@ -3577,7 +3611,7 @@ Timer tmSerial
vis hSlider6,0 vis hSlider6,0
vis nNum6,0 vis nNum6,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",38
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff6.val=sys0 btOnOff6.val=sys0
} }
@@ -3591,7 +3625,7 @@ Timer tmSerial
vis hSlider6,0 vis hSlider6,0
vis nNum6,0 vis nNum6,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",38
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff6.val=sys0 btOnOff6.val=sys0
} }
@@ -3608,7 +3642,7 @@ Timer tmSerial
bText6.pco=65535 bText6.pco=65535
bText6.pco2=65535 bText6.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText6.txt,",",38 spstr strCommand.txt,bText6.txt,"~",38
} }
if(type6.txt=="button") if(type6.txt=="button")
{ {
@@ -3623,7 +3657,7 @@ Timer tmSerial
bText6.pco=1374 bText6.pco=1374
bText6.pco2=1374 bText6.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText6.txt,",",38 spstr strCommand.txt,bText6.txt,"~",38
} }
if(type6.txt=="number") if(type6.txt=="number")
{ {
@@ -3636,7 +3670,7 @@ Timer tmSerial
vis hSlider6,1 vis hSlider6,1
vis nNum6,1 vis nNum6,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText6.txt,",",38 spstr strCommand.txt,bText6.txt,"~",38
//first value is current value //first value is current value
spstr bText6.txt,tTmp.txt,"|",0 spstr bText6.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -3656,11 +3690,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -3710,23 +3744,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -3750,14 +3784,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardEntities"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -515,7 +515,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardGrid,bPrev" tSend.txt="event,buttonPress2,cardGrid,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1000,15 +1007,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis tEntity1,0 vis tEntity1,0
@@ -1016,22 +1050,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1
vis bEntity1,1 vis bEntity1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity1.pco=sys0 bEntity1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis tEntity2,0 vis tEntity2,0
@@ -1039,22 +1073,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1
vis bEntity2,1 vis bEntity2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity2.pco=sys0 bEntity2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis tEntity3,0 vis tEntity3,0
@@ -1062,22 +1096,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1
vis bEntity3,1 vis bEntity3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity3.pco=sys0 bEntity3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis tEntity4,0 vis tEntity4,0
@@ -1085,22 +1119,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1
vis bEntity4,1 vis bEntity4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity4.pco=sys0 bEntity4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis tEntity5,0 vis tEntity5,0
@@ -1108,22 +1142,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1
vis bEntity5,1 vis bEntity5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity5.pco=sys0 bEntity5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis tEntity6,0 vis tEntity6,0
@@ -1131,16 +1165,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1
vis bEntity6,1 vis bEntity6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity6.pco=sys0 bEntity6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
} }
@@ -1148,11 +1182,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1202,23 +1236,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -1242,14 +1276,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardGrid"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -856,7 +856,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardMedia,bPrev" tSend.txt="event,buttonPress2,cardMedia,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -920,31 +927,58 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,"|",1
//heading //heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//title //title
spstr strCommand.txt,tTitle.txt,"|",4 spstr strCommand.txt,tTitle.txt,"~",5
//author //author
spstr strCommand.txt,tAuthor.txt,"|",5 spstr strCommand.txt,tAuthor.txt,"~",6
//volume //volume
spstr strCommand.txt,tTmp.txt,"|",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hVolume.val=sys0 hVolume.val=sys0
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1 substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1
//speaker current //speaker current
spstr strCommand.txt,tSpeaker.txt,"|",8 spstr strCommand.txt,tSpeaker.txt,"~",9
if(tSpeaker.txt!="") if(tSpeaker.txt!="")
{ {
tSpeaker.pco=1374 tSpeaker.pco=1374
@@ -953,14 +987,14 @@ Timer tmSerial
tSpeaker.pco=65535 tSpeaker.pco=65535
} }
//speaker list //speaker list
spstr strCommand.txt,vaSpeakerList.txt,"|",9 spstr strCommand.txt,vaSpeakerList.txt,"~",10
if(vaSpeakerList.txt=="") if(vaSpeakerList.txt=="")
{ {
vis t6,0 vis t6,0
} }
vaSpeakerPos.val=0 vaSpeakerPos.val=0
// on off button // on off button
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",11
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t5,0 vis t5,0
@@ -973,62 +1007,75 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
@@ -1065,14 +1112,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardMedia"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -25,7 +25,6 @@ Page cardThermo
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
vis nPageDisp,0
vis xTempMin,0 vis xTempMin,0
vis xTempMax,0 vis xTempMax,0
vis xTempStep,0 vis xTempStep,0
@@ -43,114 +42,84 @@ Page cardThermo
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
ID : 7 ID : 6
Scope : local Scope : local
Text : Text :
Max. Text Size: 250 Max. Text Size: 250
Variable (string) entn Variable (string) entn
Attributes Attributes
ID : 22 ID : 21
Scope : local Scope : local
Text : Text :
Max. Text Size: 50 Max. Text Size: 50
Variable (string) va0 Variable (string) va0
Attributes Attributes
ID : 33 ID : 32
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va1 Variable (string) va1
Attributes Attributes
ID : 34 ID : 33
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va2 Variable (string) va2
Attributes Attributes
ID : 35 ID : 34
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va3 Variable (string) va3
Attributes Attributes
ID : 36 ID : 35
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va4 Variable (string) va4
Attributes Attributes
ID : 37 ID : 36
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va5 Variable (string) va5
Attributes Attributes
ID : 38 ID : 37
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va6 Variable (string) va6
Attributes Attributes
ID : 39 ID : 38
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va7 Variable (string) va7
Attributes Attributes
ID : 40 ID : 39
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Variable (string) va8 Variable (string) va8
Attributes Attributes
ID : 41 ID : 40
Scope : local Scope : local
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Number nPageDisp
Attributes
ID : 5
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 275
y coordinate : 1
Width : 42
Height : 24
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 65535
Font Color : 0
Horizontal Alignment : center
Vertical Alignment : center
Value : 0
Significant digits shown : all
Format : decimal
Word wrap : enabled
Horizontal Spacing : 0
Vertical Spacing : 0
XFloat xTempCurr XFloat xTempCurr
Attributes Attributes
ID : 14 ID : 13
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -180,7 +149,7 @@ XFloat xTempCurr
XFloat xTempDest XFloat xTempDest
Attributes Attributes
ID : 16 ID : 15
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -210,7 +179,7 @@ XFloat xTempDest
XFloat xTempMin XFloat xTempMin
Attributes Attributes
ID : 17 ID : 16
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -240,7 +209,7 @@ XFloat xTempMin
XFloat xTempMax XFloat xTempMax
Attributes Attributes
ID : 18 ID : 17
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -270,7 +239,7 @@ XFloat xTempMax
XFloat xTempStep XFloat xTempStep
Attributes Attributes
ID : 19 ID : 18
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -360,7 +329,7 @@ Text tTmp
Text tInstruction Text tInstruction
Attributes Attributes
ID : 8 ID : 7
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -390,7 +359,7 @@ Text tInstruction
Text tId Text tId
Attributes Attributes
ID : 9 ID : 8
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -420,7 +389,7 @@ Text tId
Text tHeading Text tHeading
Attributes Attributes
ID : 10 ID : 9
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -450,7 +419,7 @@ Text tHeading
Text tStatus Text tStatus
Attributes Attributes
ID : 11 ID : 10
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -480,7 +449,7 @@ Text tStatus
Text t2 Text t2
Attributes Attributes
ID : 15 ID : 14
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -574,7 +543,7 @@ Button bNext
Button bDown Button bDown
Attributes Attributes
ID : 12 ID : 11
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -628,7 +597,7 @@ Button bDown
Button bUp Button bUp
Attributes Attributes
ID : 13 ID : 12
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -682,7 +651,7 @@ Button bUp
Button bPrev Button bPrev
Attributes Attributes
ID : 23 ID : 22
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -714,7 +683,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardThermo,bPrev" tSend.txt="event,buttonPress2,cardThermo,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -729,7 +705,7 @@ Button bPrev
Dual-state Button bt0 Dual-state Button bt0
Attributes Attributes
ID : 24 ID : 23
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -778,7 +754,7 @@ Dual-state Button bt0
Dual-state Button bt1 Dual-state Button bt1
Attributes Attributes
ID : 25 ID : 24
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -827,7 +803,7 @@ Dual-state Button bt1
Dual-state Button bt2 Dual-state Button bt2
Attributes Attributes
ID : 26 ID : 25
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -876,7 +852,7 @@ Dual-state Button bt2
Dual-state Button bt3 Dual-state Button bt3
Attributes Attributes
ID : 27 ID : 26
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -925,7 +901,7 @@ Dual-state Button bt3
Dual-state Button bt4 Dual-state Button bt4
Attributes Attributes
ID : 28 ID : 27
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -974,7 +950,7 @@ Dual-state Button bt4
Dual-state Button bt5 Dual-state Button bt5
Attributes Attributes
ID : 29 ID : 28
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -1023,7 +999,7 @@ Dual-state Button bt5
Dual-state Button bt6 Dual-state Button bt6
Attributes Attributes
ID : 30 ID : 29
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -1072,7 +1048,7 @@ Dual-state Button bt6
Dual-state Button bt7 Dual-state Button bt7
Attributes Attributes
ID : 31 ID : 30
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -1121,7 +1097,7 @@ Dual-state Button bt7
Dual-state Button bt8 Dual-state Button bt8
Attributes Attributes
ID : 32 ID : 31
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -1170,7 +1146,7 @@ Dual-state Button bt8
Timer tmSerial Timer tmSerial
Attributes Attributes
ID : 6 ID : 5
Scope : local Scope : local
Period (ms): 50 Period (ms): 50
Enabled : yes Enabled : yes
@@ -1219,29 +1195,56 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,",",1
//heading //heading
spstr strCommand.txt,tHeading.txt,",",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//currentTemp //currentTemp
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,xTempCurr.val,0,0 covx tTmp.txt,xTempCurr.val,0,0
//dstTemp //dstTemp
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,xTempDest.val,0,0 covx tTmp.txt,xTempDest.val,0,0
//status //status
spstr strCommand.txt,tStatus.txt,",",5 spstr strCommand.txt,tStatus.txt,"~",6
//minTemp //minTemp
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,xTempMin.val,0,0 covx tTmp.txt,xTempMin.val,0,0
//maxTemp //maxTemp
spstr strCommand.txt,tTmp.txt,",",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,xTempMax.val,0,0 covx tTmp.txt,xTempMax.val,0,0
//tempStep //tempStep
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,xTempStep.val,0,0 covx tTmp.txt,xTempStep.val,0,0
// disable all buttons // disable all buttons
vis bt0,0 vis bt0,0
@@ -1254,232 +1257,237 @@ Timer tmSerial
vis bt7,0 vis bt7,0
vis bt8,0 vis bt8,0
//bt0 //bt0
spstr strCommand.txt,tTmp.txt,",",9 spstr strCommand.txt,tTmp.txt,"~",10
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt0.txt,sys0,1 substr pageIcons.tIcons.txt,bt0.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,bt0.pco2,0,0 covx tTmp.txt,bt0.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,bt0.val,0,0 covx tTmp.txt,bt0.val,0,0
// save action // save action
spstr strCommand.txt,va0.txt,",",12 spstr strCommand.txt,va0.txt,"~",13
//enable //enable
vis bt0,1 vis bt0,1
} } //bt1
//bt1 spstr strCommand.txt,tTmp.txt,"~",14
spstr strCommand.txt,tTmp.txt,",",13
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt1.txt,sys0,1 substr pageIcons.tIcons.txt,bt1.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,bt1.pco2,0,0 covx tTmp.txt,bt1.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",15 spstr strCommand.txt,tTmp.txt,"~",16
covx tTmp.txt,bt1.val,0,0 covx tTmp.txt,bt1.val,0,0
// save action // save action
spstr strCommand.txt,va1.txt,",",16 spstr strCommand.txt,va1.txt,"~",17
//enable //enable
vis bt1,1 vis bt1,1
} } //bt2
//bt2 spstr strCommand.txt,tTmp.txt,"~",18
spstr strCommand.txt,tTmp.txt,",",17
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt2.txt,sys0,1 substr pageIcons.tIcons.txt,bt2.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",19
covx tTmp.txt,bt2.pco2,0,0 covx tTmp.txt,bt2.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",19 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,bt2.val,0,0 covx tTmp.txt,bt2.val,0,0
// save action // save action
spstr strCommand.txt,va2.txt,",",20 spstr strCommand.txt,va2.txt,"~",21
//enable //enable
vis bt2,1 vis bt2,1
} } //bt3
//bt3 spstr strCommand.txt,tTmp.txt,"~",22
spstr strCommand.txt,tTmp.txt,",",21
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt3.txt,sys0,1 substr pageIcons.tIcons.txt,bt3.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",22 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,bt3.pco2,0,0 covx tTmp.txt,bt3.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,bt3.val,0,0 covx tTmp.txt,bt3.val,0,0
// save action // save action
spstr strCommand.txt,va3.txt,",",24 spstr strCommand.txt,va3.txt,"~",25
//enable //enable
vis bt3,1 vis bt3,1
} } //bt4
//bt4 spstr strCommand.txt,tTmp.txt,"~",26
spstr strCommand.txt,tTmp.txt,",",25
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt4.txt,sys0,1 substr pageIcons.tIcons.txt,bt4.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",27
covx tTmp.txt,bt4.pco2,0,0 covx tTmp.txt,bt4.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",27 spstr strCommand.txt,tTmp.txt,"~",28
covx tTmp.txt,bt4.val,0,0 covx tTmp.txt,bt4.val,0,0
// save action // save action
spstr strCommand.txt,va4.txt,",",28 spstr strCommand.txt,va4.txt,"~",29
//enable //enable
vis bt4,1 vis bt4,1
} } //bt5
//bt5 spstr strCommand.txt,tTmp.txt,"~",30
spstr strCommand.txt,tTmp.txt,",",29
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt5.txt,sys0,1 substr pageIcons.tIcons.txt,bt5.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",31
covx tTmp.txt,bt5.pco2,0,0 covx tTmp.txt,bt5.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",31 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,bt5.val,0,0 covx tTmp.txt,bt5.val,0,0
// save action // save action
spstr strCommand.txt,va5.txt,",",32 spstr strCommand.txt,va5.txt,"~",33
//enable //enable
vis bt5,1 vis bt5,1
} } //bt6
//bt6 spstr strCommand.txt,tTmp.txt,"~",34
spstr strCommand.txt,tTmp.txt,",",33
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt6.txt,sys0,1 substr pageIcons.tIcons.txt,bt6.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",34 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,bt6.pco2,0,0 covx tTmp.txt,bt6.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,bt6.val,0,0 covx tTmp.txt,bt6.val,0,0
// save action // save action
spstr strCommand.txt,va6.txt,",",36 spstr strCommand.txt,va6.txt,"~",37
//enable //enable
vis bt6,1 vis bt6,1
} } //bt7
//bt7 spstr strCommand.txt,tTmp.txt,"~",38
spstr strCommand.txt,tTmp.txt,",",37
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt7.txt,sys0,1 substr pageIcons.tIcons.txt,bt7.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",39
covx tTmp.txt,bt7.pco2,0,0 covx tTmp.txt,bt7.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",39 spstr strCommand.txt,tTmp.txt,"~",40
covx tTmp.txt,bt7.val,0,0 covx tTmp.txt,bt7.val,0,0
// save action // save action
spstr strCommand.txt,va7.txt,",",40 spstr strCommand.txt,va7.txt,"~",41
//enable //enable
vis bt7,1 vis bt7,1
} } //bt8
//bt8 spstr strCommand.txt,tTmp.txt,"~",42
spstr strCommand.txt,tTmp.txt,",",41
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt8.txt,sys0,1 substr pageIcons.tIcons.txt,bt8.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",42 spstr strCommand.txt,tTmp.txt,"~",43
covx tTmp.txt,bt8.pco2,0,0 covx tTmp.txt,bt8.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",43 spstr strCommand.txt,tTmp.txt,"~",44
covx tTmp.txt,bt8.val,0,0 covx tTmp.txt,bt8.val,0,0
// save action // save action
spstr strCommand.txt,va8.txt,",",44 spstr strCommand.txt,va8.txt,"~",45
//enable //enable
vis bt8,1 vis bt8,1
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,sleepTimeout,0,0
}
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardGrid")
{ {
page cardMedia page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
page cardAlarm page cardAlarm
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0
}
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1494,27 +1502,38 @@ Timer tmSerial
Timer tmSleep Timer tmSleep
Attributes Attributes
ID : 20 ID : 19
Scope : local Scope : local
Period (ms): 1000 Period (ms): 1000
Enabled : yes Enabled : yes
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardThermo"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }
TouchCap tc0 TouchCap tc0
Attributes Attributes
ID : 21 ID : 20
Scope: local Scope: local
Value: 0 Value: 0

View File

@@ -1,62 +1,62 @@
Program.s Program.s
0 Component(s) 0 Component(s)
9 Line(s) of event code 10 Line(s) of event code
9 Unique line(s) of event code 10 Unique line(s) of event code
pageSerialTest pageSerialTest
13 Component(s) 13 Component(s)
48 Line(s) of event code 48 Line(s) of event code
43 Unique line(s) of event code 43 Unique line(s) of event code
popupShutter
19 Component(s)
179 Line(s) of event code
102 Unique line(s) of event code
popupNotify
17 Component(s)
179 Line(s) of event code
118 Unique line(s) of event code
pageTest
13 Component(s)
13 Line(s) of event code
13 Unique line(s) of event code
cardAlarm
35 Component(s)
276 Line(s) of event code
172 Unique line(s) of event code
popupLight
27 Component(s)
323 Line(s) of event code
174 Unique line(s) of event code
cardThermo
42 Component(s)
406 Line(s) of event code
218 Unique line(s) of event code
screensaver
31 Component(s)
183 Line(s) of event code
133 Unique line(s) of event code
cardGrid
39 Component(s)
388 Line(s) of event code
224 Unique line(s) of event code
cardMedia
30 Component(s)
278 Line(s) of event code
139 Unique line(s) of event code
pageIcons pageIcons
5 Component(s) 7 Component(s)
0 Line(s) of event code 0 Line(s) of event code
0 Unique line(s) of event code 0 Unique line(s) of event code
pageStartup pageStartup
19 Component(s) 19 Component(s)
150 Line(s) of event code 150 Line(s) of event code
113 Unique line(s) of event code 113 Unique line(s) of event code
popupNotify
17 Component(s)
178 Line(s) of event code
117 Unique line(s) of event code
pageTest
13 Component(s)
13 Line(s) of event code
13 Unique line(s) of event code
popupLight
27 Component(s)
322 Line(s) of event code
173 Unique line(s) of event code
screensaver
33 Component(s)
207 Line(s) of event code
158 Unique line(s) of event code
cardMedia
30 Component(s)
333 Line(s) of event code
170 Unique line(s) of event code
popupShutter
19 Component(s)
178 Line(s) of event code
101 Unique line(s) of event code
cardAlarm
35 Component(s)
345 Line(s) of event code
214 Unique line(s) of event code
cardGrid
39 Component(s)
430 Line(s) of event code
249 Unique line(s) of event code
cardThermo
41 Component(s)
460 Line(s) of event code
284 Unique line(s) of event code
cardEntities cardEntities
86 Component(s) 86 Component(s)
1320 Line(s) of event code 1362 Line(s) of event code
526 Unique line(s) of event code 553 Unique line(s) of event code
Total Total
13 Page(s) 13 Page(s)
376 Component(s) 379 Component(s)
3752 Line(s) of event code 4036 Line(s) of event code
1020 Unique line(s) of event code 1153 Unique line(s) of event code

View File

@@ -18,6 +18,20 @@ Page pageIcons
Fill : solid color Fill : solid color
Back. Color : 65535 Back. Color : 65535
Variable (string) vaTime
Attributes
ID : 5
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
ID : 6
Scope : global
Text :
Max. Text Size: 35
Text tIcons Text tIcons
Attributes Attributes
ID : 2 ID : 2
@@ -42,8 +56,8 @@ Text tIcons
Horizontal Alignment : left Horizontal Alignment : left
Vertical Alignment : top Vertical Alignment : top
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 150 Max. Text Size : 170
Word wrap : enabled Word wrap : enabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0

View File

@@ -402,7 +402,7 @@ Text tVersion
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 23 Text : 28
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -552,27 +552,27 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
@@ -580,11 +580,11 @@ Timer tmSerial
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -727,7 +727,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -785,24 +784,24 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// get Button State // get Button State
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
// get Brightness value // get Brightness value
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",4
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t1,0 vis t1,0
@@ -820,7 +819,7 @@ Timer tmSerial
} }
} }
// get ColorTemp value // get ColorTemp value
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis hTempSlider,0 vis hTempSlider,0
@@ -864,7 +863,7 @@ Timer tmSerial
} }
} }
// get Color value // get Color value
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
// disable -> isn't supported // disable -> isn't supported
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
@@ -888,34 +887,34 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -403,7 +403,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -461,70 +460,70 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get entn // get entn
spstr strCommand.txt,entn.txt,"|",1 spstr strCommand.txt,entn.txt,"~",1
// get Heading // get Heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",2
// heading color // heading color
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tHeading.pco=sys0 tHeading.pco=sys0
// get b1 // get b1
spstr strCommand.txt,b1.txt,"|",4 spstr strCommand.txt,b1.txt,"~",4
if(b1.txt!="") if(b1.txt!="")
{ {
vis b1,1 vis b1,1
} }
// b1 color // b1 color
spstr strCommand.txt,tTmp.txt,"|",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b1.pco=sys0 b1.pco=sys0
// get b2 // get b2
spstr strCommand.txt,b2.txt,"|",6 spstr strCommand.txt,b2.txt,"~",6
if(b2.txt!="") if(b2.txt!="")
{ {
vis b2,1 vis b2,1
} }
// b2 color // b2 color
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b2.pco=sys0 b2.pco=sys0
// get tText // get tText
spstr strCommand.txt,tText.txt,"|",8 spstr strCommand.txt,tText.txt,"~",8
// tText color // tText color
spstr strCommand.txt,tTmp.txt,"|",9 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tText.pco=sys0 tText.pco=sys0
//preserve old sleepTimeout //preserve old sleepTimeout
vaOldSleepT.val=sleepTimeout vaOldSleepT.val=sleepTimeout
// sleep timeout // sleep timeout
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
sleepTimeout=sys0 sleepTimeout=sys0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="exitPopup") if(tInstruction.txt=="exitPopup")
@@ -536,11 +535,11 @@ Timer tmSerial
sleepTimeout=vaOldSleepT.val sleepTimeout=vaOldSleepT.val
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -532,7 +532,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -590,45 +589,45 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get Position value // get Position value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hPosition.val=sys0 hPosition.val=sys0
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -22,119 +22,54 @@ Page screensaver
Preinitialize Event Preinitialize Event
recmod=1 recmod=1
bauds=115200 bauds=115200
vis originPage,0
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis p0,0 vis p0,0
//load gloabl time string from pageIcons //load gloabl time string from pageIcons
//tTime.txt=vaTime.txt //tTime.txt=vaTime.txt
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
} }
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
dim=dimValue dim=dimValue
vis tSend,0 vis tSend,0
//page open event //page open event
// clear weather elements, to keep example content in HMI // clear weather elements, to keep example content in HMI
tMainIcon.txt=""
tMainText.txt=""
tForecast1.txt=""
tF1Icon.txt=""
tForecast1Val.txt=""
tForecast2.txt=""
tF2Icon.txt=""
tForecast2Val.txt=""
tSend.txt="event,screensaverOpen"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
ID : 5 ID : 4
Scope : local Scope : local
Text : Text :
Max. Text Size: 200 Max. Text Size: 200
Variable (string) vaTime
Attributes
ID : 10
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
ID : 11
Scope : global
Text :
Max. Text Size: 30
Variable (string) tId Variable (string) tId
Attributes Attributes
ID : 22 ID : 19
Scope : local Scope : local
Text : Text :
Max. Text Size: 25 Max. Text Size: 25
Variable (int32) vaTap Variable (int32) vaTap
Attributes Attributes
ID : 30 ID : 27
Scope: local Scope: local
Value: 0 Value: 0
Number originPage
Attributes
ID : 3
Scope : global
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 239
y coordinate : 430
Width : 24
Height : 49
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 65535
Font Color : 0
Horizontal Alignment : center
Vertical Alignment : center
Value : 0
Significant digits shown : all
Format : decimal
Word wrap : enabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tInstruction Text tInstruction
Attributes Attributes
ID : 6 ID : 5
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 155 x coordinate : 260
y coordinate : 445 y coordinate : 446
Width : 27 Width : 26
Height : 30 Height : 30
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
@@ -156,14 +91,14 @@ Text tInstruction
Text tTmp Text tTmp
Attributes Attributes
ID : 7 ID : 6
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 196 x coordinate : 293
y coordinate : 445 y coordinate : 447
Width : 25 Width : 25
Height : 30 Height : 30
Effect : load Effect : load
@@ -186,7 +121,7 @@ Text tTmp
Text tTime Text tTime
Attributes Attributes
ID : 8 ID : 7
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -216,16 +151,16 @@ Text tTime
Text tDate Text tDate
Attributes Attributes
ID : 9 ID : 8
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 0 x coordinate : 0
y coordinate : 183 y coordinate : 180
Width : 320 Width : 320
Height : 38 Height : 36
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -239,22 +174,22 @@ Text tDate
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Tuesday, 08. March 2022 Text : Tuesday, 08. March 2022
Max. Text Size : 30 Max. Text Size : 35
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tSend Text tSend
Attributes Attributes
ID : 12 ID : 9
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 280 x coordinate : 19
y coordinate : 446 y coordinate : 450
Width : 29 Width : 27
Height : 30 Height : 30
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
@@ -276,16 +211,16 @@ Text tSend
Text tMainIcon Text tMainIcon
Attributes Attributes
ID : 13 ID : 10
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 38 x coordinate : 125
y coordinate : 234 y coordinate : 241
Width : 70 Width : 70
Height : 66 Height : 65
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -298,7 +233,7 @@ Text tMainIcon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -306,16 +241,16 @@ Text tMainIcon
Text tMainText Text tMainText
Attributes Attributes
ID : 14 ID : 11
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 19 x coordinate : 111
y coordinate : 299 y coordinate : 305
Width : 110 Width : 110
Height : 43 Height : 42
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -328,7 +263,7 @@ Text tMainText
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 2,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -336,16 +271,16 @@ Text tMainText
Text tForecast1 Text tForecast1
Attributes Attributes
ID : 15 ID : 12
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 140 x coordinate : 5
y coordinate : 242 y coordinate : 368
Width : 72 Width : 71
Height : 26 Height : 25
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -358,7 +293,7 @@ Text tForecast1
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Mi Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -366,16 +301,16 @@ Text tForecast1
Text tForecast1Val Text tForecast1Val
Attributes Attributes
ID : 16 ID : 13
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 138 x coordinate : 2
y coordinate : 309 y coordinate : 434
Width : 72 Width : 70
Height : 26 Height : 24
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -388,7 +323,7 @@ Text tForecast1Val
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 9,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -396,16 +331,16 @@ Text tForecast1Val
Text tF1Icon Text tF1Icon
Attributes Attributes
ID : 17 ID : 14
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 158 x coordinate : 23
y coordinate : 271 y coordinate : 397
Width : 40 Width : 40
Height : 35 Height : 34
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -418,7 +353,7 @@ Text tF1Icon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -426,16 +361,16 @@ Text tF1Icon
Text tForecast2 Text tForecast2
Attributes Attributes
ID : 18 ID : 15
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 224 x coordinate : 86
y coordinate : 242 y coordinate : 369
Width : 72 Width : 71
Height : 25 Height : 24
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -448,7 +383,7 @@ Text tForecast2
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Do Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -456,16 +391,16 @@ Text tForecast2
Text tF2Icon Text tF2Icon
Attributes Attributes
ID : 19 ID : 16
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 240 x coordinate : 103
y coordinate : 271 y coordinate : 397
Width : 40 Width : 40
Height : 35 Height : 34
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -478,7 +413,7 @@ Text tF2Icon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -486,16 +421,16 @@ Text tF2Icon
Text tForecast2Val Text tForecast2Val
Attributes Attributes
ID : 20 ID : 17
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 224 x coordinate : 83
y coordinate : 309 y coordinate : 434
Width : 72 Width : 71
Height : 25 Height : 24
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -508,7 +443,7 @@ Text tForecast2Val
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 11,9 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -516,15 +451,15 @@ Text tForecast2Val
Text t10 Text t10
Attributes Attributes
ID : 21 ID : 18
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 46 x coordinate : 49
y coordinate : 227 y coordinate : 225
Width : 230 Width : 225
Height : 2 Height : 2
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
@@ -546,15 +481,15 @@ Text t10
Text tAMPM Text tAMPM
Attributes Attributes
ID : 23 ID : 20
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 105 x coordinate : 105
y coordinate : 126 y coordinate : 122
Width : 104 Width : 103
Height : 57 Height : 57
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
@@ -576,16 +511,16 @@ Text tAMPM
Text tForecast3Val Text tForecast3Val
Attributes Attributes
ID : 24 ID : 21
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 81 x coordinate : 165
y coordinate : 417 y coordinate : 435
Width : 71 Width : 70
Height : 25 Height : 23
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -606,16 +541,16 @@ Text tForecast3Val
Text tF3Icon Text tF3Icon
Attributes Attributes
ID : 25 ID : 22
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 98 x coordinate : 183
y coordinate : 379 y coordinate : 398
Width : 40 Width : 40
Height : 35 Height : 33
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -636,16 +571,16 @@ Text tF3Icon
Text tForecast3 Text tForecast3
Attributes Attributes
ID : 26 ID : 23
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 82 x coordinate : 167
y coordinate : 350 y coordinate : 370
Width : 72 Width : 70
Height : 25 Height : 23
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -666,16 +601,16 @@ Text tForecast3
Text tForecast4 Text tForecast4
Attributes Attributes
ID : 27 ID : 24
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 163 x coordinate : 247
y coordinate : 350 y coordinate : 370
Width : 72 Width : 70
Height : 25 Height : 23
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -696,16 +631,136 @@ Text tForecast4
Text tF4Icon Text tF4Icon
Attributes Attributes
ID : 28 ID : 25
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 179 x coordinate : 263
y coordinate : 379 y coordinate : 398
Width : 40 Width : 40
Height : 35 Height : 33
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 1
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 5
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tForecast4Val
Attributes
ID : 26
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 246
y coordinate : 435
Width : 70
Height : 23
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMainTextAlt
Attributes
ID : 29
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 203
y coordinate : 249
Width : 105
Height : 41
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 2
Back. Color : 0
Font Color : 65535
Horizontal Alignment : left
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMainIconAlt
Attributes
ID : 30
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 100
y coordinate : 260
Width : 100
Height : 65
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 3
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMRIcon
Attributes
ID : 31
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 201
y coordinate : 304
Width : 40
Height : 34
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -724,18 +779,18 @@ Text tF4Icon
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tForecast4Val Text tMR
Attributes Attributes
ID : 29 ID : 32
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 163 x coordinate : 243
y coordinate : 417 y coordinate : 309
Width : 72 Width : 61
Height : 25 Height : 20
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -745,7 +800,7 @@ Text tForecast4Val
Font ID : 0 Font ID : 0
Back. Color : 0 Back. Color : 0
Font Color : 65535 Font Color : 65535
Horizontal Alignment : center Horizontal Alignment : left
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Text :
@@ -773,7 +828,7 @@ Picture p0
Timer tmSerial Timer tmSerial
Attributes Attributes
ID : 4 ID : 3
Scope : local Scope : local
Period (ms): 50 Period (ms): 50
Enabled : yes Enabled : yes
@@ -822,7 +877,7 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="wake") if(tInstruction.txt=="wake")
{ {
//dim=100 //dim=100
@@ -831,16 +886,16 @@ Timer tmSerial
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
//get set time to global variable //get set time to global variable
spstr strCommand.txt,vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
@@ -849,66 +904,104 @@ Timer tmSerial
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
//get set date to global variable //get set date to global variable
spstr strCommand.txt,vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="weatherUpdate") if(tInstruction.txt=="weatherUpdate")
{ {
vis tMainIcon,1
vis tMainIconAlt,0
vis tMainText,1
vis tMainTextAlt,0
vis tMRIcon,0
vis tMR,0
//tMainIcon //tMainIcon
spstr strCommand.txt,tTmp.txt,"?",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1
tMainIconAlt.txt=tMainIcon.txt
//tMainText //tMainText
spstr strCommand.txt,tMainText.txt,"?",2 spstr strCommand.txt,tMainText.txt,"~",2
tMainTextAlt.txt=tMainText.txt
//tForecast1 //tForecast1
spstr strCommand.txt,tForecast1.txt,"?",3 spstr strCommand.txt,tForecast1.txt,"~",3
//tF1Icon //tF1Icon
spstr strCommand.txt,tTmp.txt,"?",4 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1
//tForecast1Val //tForecast1Val
spstr strCommand.txt,tForecast1Val.txt,"?",5 spstr strCommand.txt,tForecast1Val.txt,"~",5
//tForecast2 //tForecast2
spstr strCommand.txt,tForecast2.txt,"?",6 spstr strCommand.txt,tForecast2.txt,"~",6
//tF2Icon //tF2Icon
spstr strCommand.txt,tTmp.txt,"?",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1
//tForecast2Val //tForecast2Val
spstr strCommand.txt,tForecast2Val.txt,"?",8 spstr strCommand.txt,tForecast2Val.txt,"~",8
//tForecast3 //tForecast3
spstr strCommand.txt,tForecast3.txt,"?",9 spstr strCommand.txt,tForecast3.txt,"~",9
//tF3Icon //tF3Icon
spstr strCommand.txt,tTmp.txt,"?",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1
//tForecast3Val //tForecast3Val
spstr strCommand.txt,tForecast3Val.txt,"?",11 spstr strCommand.txt,tForecast3Val.txt,"~",11
//tForecast4 //tForecast4
spstr strCommand.txt,tForecast4.txt,"?",12 spstr strCommand.txt,tForecast4.txt,"~",12
//tF4Icon //tF4Icon
spstr strCommand.txt,tTmp.txt,"?",13 spstr strCommand.txt,tTmp.txt,"~",13
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1
//tForecast4Val //tForecast4Val
spstr strCommand.txt,tForecast4Val.txt,"?",14 spstr strCommand.txt,tForecast4Val.txt,"~",14
//alternative layout
//tMRIcon
spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMRIcon.txt,sys0,1
if(tTmp.txt!="")
{
//value for tMRIcon, activate alternative layout
vis tMainIcon,0
vis tMainText,0
vis tMainTextAlt,1
vis tMainIconAlt,1
vis tMRIcon,1
vis tMR,1
vis tForecast1,0
vis tF1Icon,0
vis tForecast1Val,0
//move forecast values to the right
tForecast4.txt=tForecast3.txt
tForecast3.txt=tForecast2.txt
tForecast2.txt=tForecast1.txt
tForecast4Val.txt=tForecast3Val.txt
tForecast3Val.txt=tForecast2Val.txt
tForecast2Val.txt=tForecast1Val.txt
tF4Icon.txt=tF3Icon.txt
tF3Icon.txt=tF2Icon.txt
tF2Icon.txt=tF1Icon.txt
}
//tMR
spstr strCommand.txt,tMR.txt,"~",16
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete u[2]+3 udelete u[2]+3
bufferPos=0 bufferPos=0
@@ -962,6 +1055,26 @@ Timer tmSerial
} }
} }
Timer tmSleep
Attributes
ID : 28
Scope : local
Period (ms): 1000
Enabled : yes
Events
Timer Event
if(sleepTimeout!=0&&dimValue!=dim)
{
sleepValue+=1
if(sleepTimeout<=sleepValue)
{
sleepValue=0
dim=dimValue
vaTap.val=0
}
}
TouchCap tc0 TouchCap tc0
Attributes Attributes
ID : 2 ID : 2
@@ -970,7 +1083,7 @@ TouchCap tc0
Events Events
Touch Press Event Touch Press Event
dim=100 dim=dimValueNormal
vaTap.val+=1 vaTap.val+=1
covx vaTap.val,tTmp.txt,0,0 covx vaTap.val,tTmp.txt,0,0
tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt
@@ -985,6 +1098,4 @@ TouchCap tc0
prints sys0,2 prints sys0,2
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
//dim=100
//page originPage.val

View File

@@ -10,6 +10,7 @@ Program.s
int sleepValue=0 int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
// fix touch offset (Removed for US version) // fix touch offset (Removed for US version)
//lcd_dev fffb 0002 0000 0020 //lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup

View File

@@ -17,7 +17,6 @@ Page cardAlarm
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
//vis nPageDisp,0
vis arm1,0 vis arm1,0
vis arm2,0 vis arm2,0
vis arm3,0 vis arm3,0
@@ -171,7 +170,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardAlarm,bPrev" tSend.txt="event,buttonPress2,cardAlarm,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -508,53 +514,80 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entn //entn
spstr strCommand.txt,entn.txt,",",1 spstr strCommand.txt,entn.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//text arm1 //text arm1
spstr strCommand.txt,arm1.txt,",",2 spstr strCommand.txt,arm1.txt,"~",3
if(arm1.txt!="") if(arm1.txt!="")
{ {
vis arm1,1 vis arm1,1
} }
//id arm1 //id arm1
spstr strCommand.txt,va1.txt,",",3 spstr strCommand.txt,va1.txt,"~",4
//text arm2 //text arm2
spstr strCommand.txt,arm2.txt,",",4 spstr strCommand.txt,arm2.txt,"~",5
if(arm2.txt!="") if(arm2.txt!="")
{ {
vis arm2,1 vis arm2,1
} }
//id arm2 //id arm2
spstr strCommand.txt,va2.txt,",",5 spstr strCommand.txt,va2.txt,"~",6
//text arm3 //text arm3
spstr strCommand.txt,arm3.txt,",",6 spstr strCommand.txt,arm3.txt,"~",7
if(arm3.txt!="") if(arm3.txt!="")
{ {
vis arm3,1 vis arm3,1
} }
//id arm3 //id arm3
spstr strCommand.txt,va3.txt,",",7 spstr strCommand.txt,va3.txt,"~",8
//text arm4 //text arm4
spstr strCommand.txt,arm4.txt,",",8 spstr strCommand.txt,arm4.txt,"~",9
if(arm4.txt!="") if(arm4.txt!="")
{ {
vis arm4,1 vis arm4,1
} }
//id arm4 //id arm4
spstr strCommand.txt,va4.txt,",",9 spstr strCommand.txt,va4.txt,"~",10
//icon //icon
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//icon color //icon color
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon.pco=sys0 tIcon.pco=sys0
//numpad status //numpad status
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",13
if(tTmp.txt!="disable") if(tTmp.txt!="disable")
{ {
vis b0,1 vis b0,1
@@ -569,9 +602,23 @@ Timer tmSerial
vis b9,1 vis b9,1
vis b10,1 vis b10,1
vis tCode,1 vis tCode,1
}else
{
vis b0,0
vis b1,0
vis b2,0
vis b3,0
vis b4,0
vis b5,0
vis b6,0
vis b7,0
vis b8,0
vis b9,0
vis b10,0
vis tCode,0
} }
//flashing status //flashing status
spstr strCommand.txt,tTmp.txt,",",13 spstr strCommand.txt,tTmp.txt,"~",14
if(tTmp.txt=="enable") if(tTmp.txt=="enable")
{ {
tmFlash.en=1 tmFlash.en=1
@@ -583,67 +630,80 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardMedia")
{ {
page cardMedia page cardMedia
} }
if(tId.txt=="cardAlarm")
{
page cardAlarm
}
} }
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
@@ -665,14 +725,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardAlarm"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -273,7 +273,7 @@ Text tIcon1
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Text tIcon2 Text tIcon2
Attributes Attributes
@@ -283,7 +283,7 @@ Text tIcon2
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tIcon3 Text tIcon3
Attributes Attributes
@@ -293,7 +293,7 @@ Text tIcon3
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Text tIcon4 Text tIcon4
Attributes Attributes
@@ -303,7 +303,7 @@ Text tIcon4
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tSend Text tSend
Attributes Attributes
@@ -363,7 +363,7 @@ Text tIcon5
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tEntity6 Text tEntity6
Attributes Attributes
@@ -383,7 +383,7 @@ Text tIcon6
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Picture p0 Picture p0
Attributes Attributes
@@ -872,7 +872,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardEntities,bPrev" tSend.txt="event,buttonPress2,cardEntities,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1047,7 +1054,7 @@ Button bDown5
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,"+entn4.txt+",down" tSend.txt="event,buttonPress2,"+entn5.txt+",down"
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1147,7 +1154,7 @@ Button bDown6
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,"+entn4.txt+",down" tSend.txt="event,buttonPress2,"+entn6.txt+",down"
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1571,15 +1578,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis bUp1,0 vis bUp1,0
@@ -1594,16 +1628,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
if(type1.txt=="shutter") if(type1.txt=="shutter")
@@ -1626,7 +1660,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -1640,7 +1674,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -1657,7 +1691,7 @@ Timer tmSerial
bText1.pco=65535 bText1.pco=65535
bText1.pco2=65535 bText1.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="button") if(type1.txt=="button")
{ {
@@ -1672,7 +1706,7 @@ Timer tmSerial
bText1.pco=1374 bText1.pco=1374
bText1.pco2=1374 bText1.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="number") if(type1.txt=="number")
{ {
@@ -1685,7 +1719,7 @@ Timer tmSerial
vis hSlider1,1 vis hSlider1,1
vis nNum1,1 vis nNum1,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
//first value is current value //first value is current value
spstr bText1.txt,tTmp.txt,"|",0 spstr bText1.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1701,9 +1735,9 @@ Timer tmSerial
hSlider1.maxval=sys0 hSlider1.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis bUp2,0 vis bUp2,0
@@ -1718,16 +1752,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1
vis tIcon2,1 vis tIcon2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon2.pco=sys0 tIcon2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
if(type2.txt=="shutter") if(type2.txt=="shutter")
@@ -1750,7 +1784,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -1764,7 +1798,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -1781,7 +1815,7 @@ Timer tmSerial
bText2.pco=65535 bText2.pco=65535
bText2.pco2=65535 bText2.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="button") if(type2.txt=="button")
{ {
@@ -1796,7 +1830,7 @@ Timer tmSerial
bText2.pco=1374 bText2.pco=1374
bText2.pco2=1374 bText2.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="number") if(type2.txt=="number")
{ {
@@ -1809,7 +1843,7 @@ Timer tmSerial
vis hSlider2,1 vis hSlider2,1
vis nNum2,1 vis nNum2,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
//first value is current value //first value is current value
spstr bText2.txt,tTmp.txt,"|",0 spstr bText2.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1825,9 +1859,9 @@ Timer tmSerial
hSlider2.maxval=sys0 hSlider2.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis bUp3,0 vis bUp3,0
@@ -1842,16 +1876,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1
vis tIcon3,1 vis tIcon3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon3.pco=sys0 tIcon3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
if(type3.txt=="shutter") if(type3.txt=="shutter")
@@ -1874,7 +1908,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -1888,7 +1922,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -1905,7 +1939,7 @@ Timer tmSerial
bText3.pco=65535 bText3.pco=65535
bText3.pco2=65535 bText3.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="button") if(type3.txt=="button")
{ {
@@ -1920,7 +1954,7 @@ Timer tmSerial
bText3.pco=1374 bText3.pco=1374
bText3.pco2=1374 bText3.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="number") if(type3.txt=="number")
{ {
@@ -1933,7 +1967,7 @@ Timer tmSerial
vis hSlider3,1 vis hSlider3,1
vis nNum3,1 vis nNum3,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
//first value is current value //first value is current value
spstr bText3.txt,tTmp.txt,"|",0 spstr bText3.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1949,9 +1983,9 @@ Timer tmSerial
hSlider3.maxval=sys0 hSlider3.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis bUp4,0 vis bUp4,0
@@ -1966,16 +2000,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1
vis tIcon4,1 vis tIcon4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon4.pco=sys0 tIcon4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
if(type4.txt=="shutter") if(type4.txt=="shutter")
@@ -1998,7 +2032,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -2012,7 +2046,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -2029,7 +2063,7 @@ Timer tmSerial
bText4.pco=65535 bText4.pco=65535
bText4.pco2=65535 bText4.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="button") if(type4.txt=="button")
{ {
@@ -2044,7 +2078,7 @@ Timer tmSerial
bText4.pco=1374 bText4.pco=1374
bText4.pco2=1374 bText4.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="number") if(type4.txt=="number")
{ {
@@ -2057,7 +2091,7 @@ Timer tmSerial
vis hSlider4,1 vis hSlider4,1
vis nNum4,1 vis nNum4,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
//first value is current value //first value is current value
spstr bText4.txt,tTmp.txt,"|",0 spstr bText4.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2073,9 +2107,9 @@ Timer tmSerial
hSlider4.maxval=sys0 hSlider4.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis bUp5,0 vis bUp5,0
@@ -2090,16 +2124,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon5.txt,sys0,1
vis tIcon5,1 vis tIcon5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon5.pco=sys0 tIcon5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
if(type5.txt=="shutter") if(type5.txt=="shutter")
@@ -2122,7 +2156,7 @@ Timer tmSerial
vis hSlider5,0 vis hSlider5,0
vis nNum5,0 vis nNum5,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",32 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff5.val=sys0 btOnOff5.val=sys0
} }
@@ -2136,7 +2170,7 @@ Timer tmSerial
vis hSlider5,0 vis hSlider5,0
vis nNum5,0 vis nNum5,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",32 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff5.val=sys0 btOnOff5.val=sys0
} }
@@ -2153,7 +2187,7 @@ Timer tmSerial
bText5.pco=65535 bText5.pco=65535
bText5.pco2=65535 bText5.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText5.txt,",",32 spstr strCommand.txt,bText5.txt,"~",32
} }
if(type5.txt=="button") if(type5.txt=="button")
{ {
@@ -2168,7 +2202,7 @@ Timer tmSerial
bText5.pco=1374 bText5.pco=1374
bText5.pco2=1374 bText5.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText5.txt,",",32 spstr strCommand.txt,bText5.txt,"~",32
} }
if(type5.txt=="number") if(type5.txt=="number")
{ {
@@ -2181,7 +2215,7 @@ Timer tmSerial
vis hSlider5,1 vis hSlider5,1
vis nNum5,1 vis nNum5,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText5.txt,",",32 spstr strCommand.txt,bText5.txt,"~",32
//first value is current value //first value is current value
spstr bText5.txt,tTmp.txt,"|",0 spstr bText5.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2197,9 +2231,9 @@ Timer tmSerial
hSlider5.maxval=sys0 hSlider5.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis bUp6,0 vis bUp6,0
@@ -2214,16 +2248,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon6.txt,sys0,1
vis tIcon6,1 vis tIcon6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon6.pco=sys0 tIcon6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
if(type6.txt=="shutter") if(type6.txt=="shutter")
@@ -2246,7 +2280,7 @@ Timer tmSerial
vis hSlider6,0 vis hSlider6,0
vis nNum6,0 vis nNum6,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",38
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff6.val=sys0 btOnOff6.val=sys0
} }
@@ -2260,7 +2294,7 @@ Timer tmSerial
vis hSlider6,0 vis hSlider6,0
vis nNum6,0 vis nNum6,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",38
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff6.val=sys0 btOnOff6.val=sys0
} }
@@ -2277,7 +2311,7 @@ Timer tmSerial
bText6.pco=65535 bText6.pco=65535
bText6.pco2=65535 bText6.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText6.txt,",",38 spstr strCommand.txt,bText6.txt,"~",38
} }
if(type6.txt=="button") if(type6.txt=="button")
{ {
@@ -2292,7 +2326,7 @@ Timer tmSerial
bText6.pco=1374 bText6.pco=1374
bText6.pco2=1374 bText6.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText6.txt,",",38 spstr strCommand.txt,bText6.txt,"~",38
} }
if(type6.txt=="number") if(type6.txt=="number")
{ {
@@ -2305,7 +2339,7 @@ Timer tmSerial
vis hSlider6,1 vis hSlider6,1
vis nNum6,1 vis nNum6,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText6.txt,",",38 spstr strCommand.txt,bText6.txt,"~",38
//first value is current value //first value is current value
spstr bText6.txt,tTmp.txt,"|",0 spstr bText6.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2325,11 +2359,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -2379,23 +2413,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -2418,14 +2452,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardEntities"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -242,7 +242,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardGrid,bPrev" tSend.txt="event,buttonPress2,cardGrid,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -563,15 +570,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis tEntity1,0 vis tEntity1,0
@@ -579,22 +613,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1
vis bEntity1,1 vis bEntity1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity1.pco=sys0 bEntity1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis tEntity2,0 vis tEntity2,0
@@ -602,22 +636,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1
vis bEntity2,1 vis bEntity2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity2.pco=sys0 bEntity2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis tEntity3,0 vis tEntity3,0
@@ -625,22 +659,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1
vis bEntity3,1 vis bEntity3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity3.pco=sys0 bEntity3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis tEntity4,0 vis tEntity4,0
@@ -648,22 +682,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1
vis bEntity4,1 vis bEntity4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity4.pco=sys0 bEntity4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis tEntity5,0 vis tEntity5,0
@@ -671,22 +705,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1
vis bEntity5,1 vis bEntity5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity5.pco=sys0 bEntity5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis tEntity6,0 vis tEntity6,0
@@ -694,16 +728,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1
vis bEntity6,1 vis bEntity6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity6.pco=sys0 bEntity6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
} }
@@ -711,11 +745,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -765,23 +799,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -804,14 +838,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardGrid"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -435,7 +435,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardMedia,bPrev" tSend.txt="event,buttonPress2,cardMedia,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -498,31 +505,58 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,"|",1
//heading //heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//title //title
spstr strCommand.txt,tTitle.txt,"|",4 spstr strCommand.txt,tTitle.txt,"~",5
//author //author
spstr strCommand.txt,tAuthor.txt,"|",5 spstr strCommand.txt,tAuthor.txt,"~",6
//volume //volume
spstr strCommand.txt,tTmp.txt,"|",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hVolume.val=sys0 hVolume.val=sys0
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1 substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1
//speaker current //speaker current
spstr strCommand.txt,tSpeaker.txt,"|",8 spstr strCommand.txt,tSpeaker.txt,"~",9
if(tSpeaker.txt!="") if(tSpeaker.txt!="")
{ {
tSpeaker.pco=1374 tSpeaker.pco=1374
@@ -531,14 +565,14 @@ Timer tmSerial
tSpeaker.pco=65535 tSpeaker.pco=65535
} }
//speaker list //speaker list
spstr strCommand.txt,vaSpeakerList.txt,"|",9 spstr strCommand.txt,vaSpeakerList.txt,"~",10
if(vaSpeakerList.txt=="") if(vaSpeakerList.txt=="")
{ {
vis t6,0 vis t6,0
} }
vaSpeakerPos.val=0 vaSpeakerPos.val=0
// on off button // on off button
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",11
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t5,0 vis t5,0
@@ -551,62 +585,75 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
@@ -642,14 +689,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardMedia"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -17,7 +17,6 @@ Page cardThermo
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
vis nPageDisp,0
vis xTempMin,0 vis xTempMin,0
vis xTempMax,0 vis xTempMax,0
vis xTempStep,0 vis xTempStep,0
@@ -99,15 +98,6 @@ Variable (string) va8
Text : Text :
Max. Text Size: 10 Max. Text Size: 10
Number nPageDisp
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Value : 0
XFloat xTempCurr XFloat xTempCurr
Attributes Attributes
Scope : local Scope : local
@@ -339,7 +329,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardThermo,bPrev" tSend.txt="event,buttonPress2,cardThermo,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -645,29 +642,56 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,",",1
//heading //heading
spstr strCommand.txt,tHeading.txt,",",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//currentTemp //currentTemp
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,xTempCurr.val,0,0 covx tTmp.txt,xTempCurr.val,0,0
//dstTemp //dstTemp
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,xTempDest.val,0,0 covx tTmp.txt,xTempDest.val,0,0
//status //status
spstr strCommand.txt,tStatus.txt,",",5 spstr strCommand.txt,tStatus.txt,"~",6
//minTemp //minTemp
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,xTempMin.val,0,0 covx tTmp.txt,xTempMin.val,0,0
//maxTemp //maxTemp
spstr strCommand.txt,tTmp.txt,",",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,xTempMax.val,0,0 covx tTmp.txt,xTempMax.val,0,0
//tempStep //tempStep
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,xTempStep.val,0,0 covx tTmp.txt,xTempStep.val,0,0
// disable all buttons // disable all buttons
vis bt0,0 vis bt0,0
@@ -680,232 +704,237 @@ Timer tmSerial
vis bt7,0 vis bt7,0
vis bt8,0 vis bt8,0
//bt0 //bt0
spstr strCommand.txt,tTmp.txt,",",9 spstr strCommand.txt,tTmp.txt,"~",10
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt0.txt,sys0,1 substr pageIcons.tIcons.txt,bt0.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,bt0.pco2,0,0 covx tTmp.txt,bt0.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,bt0.val,0,0 covx tTmp.txt,bt0.val,0,0
// save action // save action
spstr strCommand.txt,va0.txt,",",12 spstr strCommand.txt,va0.txt,"~",13
//enable //enable
vis bt0,1 vis bt0,1
} } //bt1
//bt1 spstr strCommand.txt,tTmp.txt,"~",14
spstr strCommand.txt,tTmp.txt,",",13
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt1.txt,sys0,1 substr pageIcons.tIcons.txt,bt1.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,bt1.pco2,0,0 covx tTmp.txt,bt1.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",15 spstr strCommand.txt,tTmp.txt,"~",16
covx tTmp.txt,bt1.val,0,0 covx tTmp.txt,bt1.val,0,0
// save action // save action
spstr strCommand.txt,va1.txt,",",16 spstr strCommand.txt,va1.txt,"~",17
//enable //enable
vis bt1,1 vis bt1,1
} } //bt2
//bt2 spstr strCommand.txt,tTmp.txt,"~",18
spstr strCommand.txt,tTmp.txt,",",17
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt2.txt,sys0,1 substr pageIcons.tIcons.txt,bt2.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",19
covx tTmp.txt,bt2.pco2,0,0 covx tTmp.txt,bt2.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",19 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,bt2.val,0,0 covx tTmp.txt,bt2.val,0,0
// save action // save action
spstr strCommand.txt,va2.txt,",",20 spstr strCommand.txt,va2.txt,"~",21
//enable //enable
vis bt2,1 vis bt2,1
} } //bt3
//bt3 spstr strCommand.txt,tTmp.txt,"~",22
spstr strCommand.txt,tTmp.txt,",",21
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt3.txt,sys0,1 substr pageIcons.tIcons.txt,bt3.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",22 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,bt3.pco2,0,0 covx tTmp.txt,bt3.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,bt3.val,0,0 covx tTmp.txt,bt3.val,0,0
// save action // save action
spstr strCommand.txt,va3.txt,",",24 spstr strCommand.txt,va3.txt,"~",25
//enable //enable
vis bt3,1 vis bt3,1
} } //bt4
//bt4 spstr strCommand.txt,tTmp.txt,"~",26
spstr strCommand.txt,tTmp.txt,",",25
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt4.txt,sys0,1 substr pageIcons.tIcons.txt,bt4.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",27
covx tTmp.txt,bt4.pco2,0,0 covx tTmp.txt,bt4.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",27 spstr strCommand.txt,tTmp.txt,"~",28
covx tTmp.txt,bt4.val,0,0 covx tTmp.txt,bt4.val,0,0
// save action // save action
spstr strCommand.txt,va4.txt,",",28 spstr strCommand.txt,va4.txt,"~",29
//enable //enable
vis bt4,1 vis bt4,1
} } //bt5
//bt5 spstr strCommand.txt,tTmp.txt,"~",30
spstr strCommand.txt,tTmp.txt,",",29
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt5.txt,sys0,1 substr pageIcons.tIcons.txt,bt5.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",31
covx tTmp.txt,bt5.pco2,0,0 covx tTmp.txt,bt5.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",31 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,bt5.val,0,0 covx tTmp.txt,bt5.val,0,0
// save action // save action
spstr strCommand.txt,va5.txt,",",32 spstr strCommand.txt,va5.txt,"~",33
//enable //enable
vis bt5,1 vis bt5,1
} } //bt6
//bt6 spstr strCommand.txt,tTmp.txt,"~",34
spstr strCommand.txt,tTmp.txt,",",33
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt6.txt,sys0,1 substr pageIcons.tIcons.txt,bt6.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",34 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,bt6.pco2,0,0 covx tTmp.txt,bt6.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,bt6.val,0,0 covx tTmp.txt,bt6.val,0,0
// save action // save action
spstr strCommand.txt,va6.txt,",",36 spstr strCommand.txt,va6.txt,"~",37
//enable //enable
vis bt6,1 vis bt6,1
} } //bt7
//bt7 spstr strCommand.txt,tTmp.txt,"~",38
spstr strCommand.txt,tTmp.txt,",",37
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt7.txt,sys0,1 substr pageIcons.tIcons.txt,bt7.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",39
covx tTmp.txt,bt7.pco2,0,0 covx tTmp.txt,bt7.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",39 spstr strCommand.txt,tTmp.txt,"~",40
covx tTmp.txt,bt7.val,0,0 covx tTmp.txt,bt7.val,0,0
// save action // save action
spstr strCommand.txt,va7.txt,",",40 spstr strCommand.txt,va7.txt,"~",41
//enable //enable
vis bt7,1 vis bt7,1
} } //bt8
//bt8 spstr strCommand.txt,tTmp.txt,"~",42
spstr strCommand.txt,tTmp.txt,",",41
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt8.txt,sys0,1 substr pageIcons.tIcons.txt,bt8.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",42 spstr strCommand.txt,tTmp.txt,"~",43
covx tTmp.txt,bt8.pco2,0,0 covx tTmp.txt,bt8.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",43 spstr strCommand.txt,tTmp.txt,"~",44
covx tTmp.txt,bt8.val,0,0 covx tTmp.txt,bt8.val,0,0
// save action // save action
spstr strCommand.txt,va8.txt,",",44 spstr strCommand.txt,va8.txt,"~",45
//enable //enable
vis bt8,1 vis bt8,1
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,sleepTimeout,0,0
}
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardGrid")
{ {
page cardMedia page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
page cardAlarm page cardAlarm
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0
}
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -926,14 +955,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardThermo"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -10,6 +10,18 @@ Page pageIcons
Swide left page ID : disabled Swide left page ID : disabled
Swide right page ID : disabled Swide right page ID : disabled
Variable (string) vaTime
Attributes
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
Scope : global
Text :
Max. Text Size: 35
Text tIcons Text tIcons
Attributes Attributes
Scope : global Scope : global
@@ -17,8 +29,8 @@ Text tIcons
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 150 Max. Text Size : 170
Text tTmp1 Text tTmp1
Attributes Attributes

View File

@@ -152,7 +152,7 @@ Text tVersion
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 23 Text : 28
Max. Text Size : 10 Max. Text Size : 10
Picture p0 Picture p0
@@ -257,27 +257,27 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
@@ -285,11 +285,11 @@ Timer tmSerial
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -382,7 +382,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -439,24 +438,24 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// get Button State // get Button State
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
// get Brightness value // get Brightness value
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",4
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t1,0 vis t1,0
@@ -474,7 +473,7 @@ Timer tmSerial
} }
} }
// get ColorTemp value // get ColorTemp value
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis hTempSlider,0 vis hTempSlider,0
@@ -518,7 +517,7 @@ Timer tmSerial
} }
} }
// get Color value // get Color value
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
// disable -> isn't supported // disable -> isn't supported
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
@@ -542,34 +541,34 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -195,7 +195,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -252,70 +251,70 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get entn // get entn
spstr strCommand.txt,entn.txt,"|",1 spstr strCommand.txt,entn.txt,"~",1
// get Heading // get Heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",2
// heading color // heading color
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tHeading.pco=sys0 tHeading.pco=sys0
// get b1 // get b1
spstr strCommand.txt,b1.txt,"|",4 spstr strCommand.txt,b1.txt,"~",4
if(b1.txt!="") if(b1.txt!="")
{ {
vis b1,1 vis b1,1
} }
// b1 color // b1 color
spstr strCommand.txt,tTmp.txt,"|",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b1.pco=sys0 b1.pco=sys0
// get b2 // get b2
spstr strCommand.txt,b2.txt,"|",6 spstr strCommand.txt,b2.txt,"~",6
if(b2.txt!="") if(b2.txt!="")
{ {
vis b2,1 vis b2,1
} }
// b2 color // b2 color
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b2.pco=sys0 b2.pco=sys0
// get tText // get tText
spstr strCommand.txt,tText.txt,"|",8 spstr strCommand.txt,tText.txt,"~",8
// tText color // tText color
spstr strCommand.txt,tTmp.txt,"|",9 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tText.pco=sys0 tText.pco=sys0
//preserve old sleepTimeout //preserve old sleepTimeout
vaOldSleepT.val=sleepTimeout vaOldSleepT.val=sleepTimeout
// sleep timeout // sleep timeout
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
sleepTimeout=sys0 sleepTimeout=sys0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="exitPopup") if(tInstruction.txt=="exitPopup")
@@ -327,11 +326,11 @@ Timer tmSerial
sleepTimeout=vaOldSleepT.val sleepTimeout=vaOldSleepT.val
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -268,7 +268,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -325,45 +324,45 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get Position value // get Position value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hPosition.val=sys0 hPosition.val=sys0
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -14,43 +14,22 @@ Page screensaver
Preinitialize Event Preinitialize Event
recmod=1 recmod=1
bauds=115200 bauds=115200
vis originPage,0
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis p0,0 vis p0,0
//load gloabl time string from pageIcons //load gloabl time string from pageIcons
//tTime.txt=vaTime.txt //tTime.txt=vaTime.txt
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
} }
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
dim=dimValue dim=dimValue
vis tSend,0 vis tSend,0
//page open event //page open event
// clear weather elements, to keep example content in HMI // clear weather elements, to keep example content in HMI
tMainIcon.txt=""
tMainText.txt=""
tForecast1.txt=""
tF1Icon.txt=""
tForecast1Val.txt=""
tForecast2.txt=""
tF2Icon.txt=""
tForecast2Val.txt=""
tSend.txt="event,screensaverOpen"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
@@ -58,18 +37,6 @@ Variable (string) strCommand
Text : Text :
Max. Text Size: 200 Max. Text Size: 200
Variable (string) vaTime
Attributes
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
Scope : global
Text :
Max. Text Size: 30
Variable (string) tId Variable (string) tId
Attributes Attributes
Scope : local Scope : local
@@ -81,15 +48,6 @@ Variable (int32) vaTap
Scope: local Scope: local
Value: 0 Value: 0
Number originPage
Attributes
Scope : global
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Value : 0
Text tInstruction Text tInstruction
Attributes Attributes
Scope : local Scope : local
@@ -128,7 +86,7 @@ Text tDate
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Tuesday, 08. March 2022 Text : Tuesday, 08. March 2022
Max. Text Size : 30 Max. Text Size : 35
Text tSend Text tSend
Attributes Attributes
@@ -147,7 +105,7 @@ Text tMainIcon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tMainText Text tMainText
@@ -157,7 +115,7 @@ Text tMainText
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 2,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast1 Text tForecast1
@@ -167,7 +125,7 @@ Text tForecast1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Mi Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast1Val Text tForecast1Val
@@ -177,7 +135,7 @@ Text tForecast1Val
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 9,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text tF1Icon Text tF1Icon
@@ -187,7 +145,7 @@ Text tF1Icon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast2 Text tForecast2
@@ -197,7 +155,7 @@ Text tForecast2
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Do Text :
Max. Text Size : 10 Max. Text Size : 10
Text tF2Icon Text tF2Icon
@@ -207,7 +165,7 @@ Text tF2Icon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast2Val Text tForecast2Val
@@ -217,7 +175,7 @@ Text tForecast2Val
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 11,9 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text t10 Text t10
@@ -288,7 +246,7 @@ Text tF4Icon
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Text :
Max. Text Size : 10 Max. Text Size : 5
Text tForecast4Val Text tForecast4Val
Attributes Attributes
@@ -300,6 +258,46 @@ Text tForecast4Val
Text : Text :
Max. Text Size : 10 Max. Text Size : 10
Text tMainTextAlt
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMainIconAlt
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMRIcon
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMR
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Picture p0 Picture p0
Attributes Attributes
Scope : local Scope : local
@@ -357,7 +355,7 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="wake") if(tInstruction.txt=="wake")
{ {
//dim=100 //dim=100
@@ -366,16 +364,16 @@ Timer tmSerial
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
//get set time to global variable //get set time to global variable
spstr strCommand.txt,vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
@@ -384,66 +382,104 @@ Timer tmSerial
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
//get set date to global variable //get set date to global variable
spstr strCommand.txt,vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="weatherUpdate") if(tInstruction.txt=="weatherUpdate")
{ {
vis tMainIcon,1
vis tMainIconAlt,0
vis tMainText,1
vis tMainTextAlt,0
vis tMRIcon,0
vis tMR,0
//tMainIcon //tMainIcon
spstr strCommand.txt,tTmp.txt,"?",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1
tMainIconAlt.txt=tMainIcon.txt
//tMainText //tMainText
spstr strCommand.txt,tMainText.txt,"?",2 spstr strCommand.txt,tMainText.txt,"~",2
tMainTextAlt.txt=tMainText.txt
//tForecast1 //tForecast1
spstr strCommand.txt,tForecast1.txt,"?",3 spstr strCommand.txt,tForecast1.txt,"~",3
//tF1Icon //tF1Icon
spstr strCommand.txt,tTmp.txt,"?",4 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1
//tForecast1Val //tForecast1Val
spstr strCommand.txt,tForecast1Val.txt,"?",5 spstr strCommand.txt,tForecast1Val.txt,"~",5
//tForecast2 //tForecast2
spstr strCommand.txt,tForecast2.txt,"?",6 spstr strCommand.txt,tForecast2.txt,"~",6
//tF2Icon //tF2Icon
spstr strCommand.txt,tTmp.txt,"?",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1
//tForecast2Val //tForecast2Val
spstr strCommand.txt,tForecast2Val.txt,"?",8 spstr strCommand.txt,tForecast2Val.txt,"~",8
//tForecast3 //tForecast3
spstr strCommand.txt,tForecast3.txt,"?",9 spstr strCommand.txt,tForecast3.txt,"~",9
//tF3Icon //tF3Icon
spstr strCommand.txt,tTmp.txt,"?",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1
//tForecast3Val //tForecast3Val
spstr strCommand.txt,tForecast3Val.txt,"?",11 spstr strCommand.txt,tForecast3Val.txt,"~",11
//tForecast4 //tForecast4
spstr strCommand.txt,tForecast4.txt,"?",12 spstr strCommand.txt,tForecast4.txt,"~",12
//tF4Icon //tF4Icon
spstr strCommand.txt,tTmp.txt,"?",13 spstr strCommand.txt,tTmp.txt,"~",13
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1
//tForecast4Val //tForecast4Val
spstr strCommand.txt,tForecast4Val.txt,"?",14 spstr strCommand.txt,tForecast4Val.txt,"~",14
//alternative layout
//tMRIcon
spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMRIcon.txt,sys0,1
if(tTmp.txt!="")
{
//value for tMRIcon, activate alternative layout
vis tMainIcon,0
vis tMainText,0
vis tMainTextAlt,1
vis tMainIconAlt,1
vis tMRIcon,1
vis tMR,1
vis tForecast1,0
vis tF1Icon,0
vis tForecast1Val,0
//move forecast values to the right
tForecast4.txt=tForecast3.txt
tForecast3.txt=tForecast2.txt
tForecast2.txt=tForecast1.txt
tForecast4Val.txt=tForecast3Val.txt
tForecast3Val.txt=tForecast2Val.txt
tForecast2Val.txt=tForecast1Val.txt
tF4Icon.txt=tF3Icon.txt
tF3Icon.txt=tF2Icon.txt
tF2Icon.txt=tF1Icon.txt
}
//tMR
spstr strCommand.txt,tMR.txt,"~",16
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete u[2]+3 udelete u[2]+3
bufferPos=0 bufferPos=0
@@ -497,6 +533,25 @@ Timer tmSerial
} }
} }
Timer tmSleep
Attributes
Scope : local
Period (ms): 1000
Enabled : yes
Events
Timer Event
if(sleepTimeout!=0&&dimValue!=dim)
{
sleepValue+=1
if(sleepTimeout<=sleepValue)
{
sleepValue=0
dim=dimValue
vaTap.val=0
}
}
TouchCap tc0 TouchCap tc0
Attributes Attributes
Scope: local Scope: local
@@ -504,7 +559,7 @@ TouchCap tc0
Events Events
Touch Press Event Touch Press Event
dim=100 dim=dimValueNormal
vaTap.val+=1 vaTap.val+=1
covx vaTap.val,tTmp.txt,0,0 covx vaTap.val,tTmp.txt,0,0
tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt
@@ -519,6 +574,4 @@ TouchCap tc0
prints sys0,2 prints sys0,2
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
//dim=100
//page originPage.val

Binary file not shown.

Binary file not shown.

View File

@@ -47,7 +47,15 @@ icons = [
"shield-airplane", "shield-airplane",
"bell-ring", "bell-ring",
"ray-vertex", "ray-vertex",
"script-text" "script-text",
"home-import-outline",
"home-export-outline",
"arrow-up-bold",
"arrow-down-bold",
"cast-audio",
"cast",
"radio",
"fireplace"
] ]

View File

@@ -3,17 +3,17 @@ head = sharedhead + """
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
""" """ + navigation
print(head) print(head)
start = 3 start = 3
for i in range(1,7): for i in range(1,7):
idxstart = start + (i-1)*6 idxstart = start + (i-1)*6
item = f""" item = f"""
// get Type // get Type
spstr strCommand.txt,type{i}.txt,",",{idxstart} spstr strCommand.txt,type{i}.txt,"~",{idxstart}
// get internal name // get internal name
spstr strCommand.txt,entn{i}.txt,",",{idxstart+1} spstr strCommand.txt,entn{i}.txt,"~",{idxstart+1}
if(type{i}.txt=="delete"||type{i}.txt=="") if(type{i}.txt=="delete"||type{i}.txt=="")
{{ {{
vis bUp{i},0 vis bUp{i},0
@@ -28,16 +28,16 @@ for i in range(1,7):
}}else }}else
{{ {{
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",{idxstart+2} spstr strCommand.txt,tTmp.txt,"~",{idxstart+2}
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon{i}.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon{i}.txt,sys0,1
vis tIcon{i},1 vis tIcon{i},1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",{idxstart+3} spstr strCommand.txt,tTmp.txt,"~",{idxstart+3}
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon{i}.pco=sys0 tIcon{i}.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity{i}.txt,",",{idxstart+4} spstr strCommand.txt,tEntity{i}.txt,"~",{idxstart+4}
vis tEntity{i},1 vis tEntity{i},1
}} }}
@@ -61,7 +61,7 @@ for i in range(1,7):
vis hSlider{i},0 vis hSlider{i},0
vis nNum{i},0 vis nNum{i},0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",{idxstart+5} spstr strCommand.txt,tTmp.txt,"~",{idxstart+5}
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff{i}.val=sys0 btOnOff{i}.val=sys0
}} }}
@@ -75,7 +75,7 @@ for i in range(1,7):
vis hSlider{i},0 vis hSlider{i},0
vis nNum{i},0 vis nNum{i},0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",{idxstart+5} spstr strCommand.txt,tTmp.txt,"~",{idxstart+5}
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff{i}.val=sys0 btOnOff{i}.val=sys0
}} }}
@@ -92,7 +92,7 @@ for i in range(1,7):
bText{i}.pco=65535 bText{i}.pco=65535
bText{i}.pco2=65535 bText{i}.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText{i}.txt,",",{idxstart+5} spstr strCommand.txt,bText{i}.txt,"~",{idxstart+5}
}} }}
if(type{i}.txt=="button") if(type{i}.txt=="button")
{{ {{
@@ -107,7 +107,7 @@ for i in range(1,7):
bText{i}.pco=1374 bText{i}.pco=1374
bText{i}.pco2=1374 bText{i}.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText{i}.txt,",",{idxstart+5} spstr strCommand.txt,bText{i}.txt,"~",{idxstart+5}
}} }}
if(type{i}.txt=="number") if(type{i}.txt=="number")
{{ {{
@@ -120,7 +120,7 @@ for i in range(1,7):
vis hSlider{i},1 vis hSlider{i},1
vis nNum{i},1 vis nNum{i},1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText{i}.txt,",",{idxstart+5} spstr strCommand.txt,bText{i}.txt,"~",{idxstart+5}
//first value is current value //first value is current value
spstr bText{i}.txt,tTmp.txt,"|",0 spstr bText{i}.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0

View File

@@ -4,7 +4,7 @@ head = sharedhead + """
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,",",1
""" """ + navigation
print(head) print(head)
start = 3 start = 3
for i in range(1,7): for i in range(1,7):

View File

@@ -0,0 +1,67 @@
from shared import *
text = sharedhead + """
if(tInstruction.txt=="entityUpd")
{
//heading
spstr strCommand.txt,tHeading.txt,",",1
""" + navigation
text += """
//entity name
spstr strCommand.txt,entn.txt,",",3
//currentTemp
spstr strCommand.txt,tTmp.txt,",",4
covx tTmp.txt,xTempCurr.val,0,0
//dstTemp
spstr strCommand.txt,tTmp.txt,",",4
covx tTmp.txt,xTempDest.val,0,0
//status
spstr strCommand.txt,tStatus.txt,",",6
//minTemp
spstr strCommand.txt,tTmp.txt,",",7
covx tTmp.txt,xTempMin.val,0,0
//maxTemp
spstr strCommand.txt,tTmp.txt,",",8
covx tTmp.txt,xTempMax.val,0,0
//tempStep
spstr strCommand.txt,tTmp.txt,",",9
covx tTmp.txt,xTempStep.val,0,0
// disable all buttons
vis bt0,0
vis bt1,0
vis bt2,0
vis bt3,0
vis bt4,0
vis bt5,0
vis bt6,0
vis bt7,0
vis bt8,0
"""
start = 10
for i in range(0,9):
idxstart = start + i*4
text += f""" //bt{i}
spstr strCommand.txt,tTmp.txt,",",{idxstart}
if(tTmp.txt!="")
{{
// set icon
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt{i}.txt,sys0,1
// set text color on active state
spstr strCommand.txt,tTmp.txt,",",{idxstart+1}
covx tTmp.txt,bt{i}.pco2,0,0
// set state
spstr strCommand.txt,tTmp.txt,",",{idxstart+2}
covx tTmp.txt,bt{i}.val,0,0
// save action
spstr strCommand.txt,va{i}.txt,",",{idxstart+3}
//enable
vis bt{i},1
}}"""
text += """
}
""" + sharedfoot
print(text)

View File

@@ -41,7 +41,7 @@ if(usize>1)
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
""" """
sharedfoot = """ sharedfoot = """
@@ -49,11 +49,11 @@ sharedfoot = """
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -103,23 +103,23 @@ sharedfoot = """
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -134,3 +134,33 @@ sharedfoot = """
} }
} }
""" """
navigation = """
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
"""

View File

@@ -50,3 +50,11 @@ ID | MD Icon Name | Icon
43 | bell-ring | ![bell-ring](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/bell-ring.svg) 43 | bell-ring | ![bell-ring](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/bell-ring.svg)
44 | ray-vertex | ![ray-vertex](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/ray-vertex.svg) 44 | ray-vertex | ![ray-vertex](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/ray-vertex.svg)
45 | script-text | ![script-text](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/script-text.svg) 45 | script-text | ![script-text](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/script-text.svg)
46 | home-import-outline | ![home-import-outline](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/home-import-outline.svg)
47 | home-export-outline | ![home-export-outline](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/home-export-outline.svg)
48 | arrow-up-bold | ![arrow-up-bold](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/arrow-up-bold.svg)
49 | arrow-down-bold | ![arrow-down-bold](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/arrow-down-bold.svg)
50 | cast-audio | ![cast-audio](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/cast-audio.svg)
51 | cast | ![cast](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/cast.svg)
52 | radio | ![radio](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/radio.svg)
53 | fireplace | ![fireplace](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/fireplace.svg)

View File

@@ -10,6 +10,7 @@ Program.s
int sleepValue=0 int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
// fix touch offset // fix touch offset
lcd_dev fffb 0002 0000 0020 lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup

View File

@@ -25,7 +25,6 @@ Page cardAlarm
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
//vis nPageDisp,0
vis arm1,0 vis arm1,0
vis arm2,0 vis arm2,0
vis arm3,0 vis arm3,0
@@ -340,7 +339,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardAlarm,bPrev" tSend.txt="event,buttonPress2,cardAlarm,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1038,53 +1044,80 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entn //entn
spstr strCommand.txt,entn.txt,",",1 spstr strCommand.txt,entn.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//text arm1 //text arm1
spstr strCommand.txt,arm1.txt,",",2 spstr strCommand.txt,arm1.txt,"~",3
if(arm1.txt!="") if(arm1.txt!="")
{ {
vis arm1,1 vis arm1,1
} }
//id arm1 //id arm1
spstr strCommand.txt,va1.txt,",",3 spstr strCommand.txt,va1.txt,"~",4
//text arm2 //text arm2
spstr strCommand.txt,arm2.txt,",",4 spstr strCommand.txt,arm2.txt,"~",5
if(arm2.txt!="") if(arm2.txt!="")
{ {
vis arm2,1 vis arm2,1
} }
//id arm2 //id arm2
spstr strCommand.txt,va2.txt,",",5 spstr strCommand.txt,va2.txt,"~",6
//text arm3 //text arm3
spstr strCommand.txt,arm3.txt,",",6 spstr strCommand.txt,arm3.txt,"~",7
if(arm3.txt!="") if(arm3.txt!="")
{ {
vis arm3,1 vis arm3,1
} }
//id arm3 //id arm3
spstr strCommand.txt,va3.txt,",",7 spstr strCommand.txt,va3.txt,"~",8
//text arm4 //text arm4
spstr strCommand.txt,arm4.txt,",",8 spstr strCommand.txt,arm4.txt,"~",9
if(arm4.txt!="") if(arm4.txt!="")
{ {
vis arm4,1 vis arm4,1
} }
//id arm4 //id arm4
spstr strCommand.txt,va4.txt,",",9 spstr strCommand.txt,va4.txt,"~",10
//icon //icon
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//icon color //icon color
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon.pco=sys0 tIcon.pco=sys0
//numpad status //numpad status
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",13
if(tTmp.txt!="disable") if(tTmp.txt!="disable")
{ {
vis b0,1 vis b0,1
@@ -1099,9 +1132,23 @@ Timer tmSerial
vis b9,1 vis b9,1
vis b10,1 vis b10,1
vis tCode,1 vis tCode,1
}else
{
vis b0,0
vis b1,0
vis b2,0
vis b3,0
vis b4,0
vis b5,0
vis b6,0
vis b7,0
vis b8,0
vis b9,0
vis b10,0
vis tCode,0
} }
//flashing status //flashing status
spstr strCommand.txt,tTmp.txt,",",13 spstr strCommand.txt,tTmp.txt,"~",14
if(tTmp.txt=="enable") if(tTmp.txt=="enable")
{ {
tmFlash.en=1 tmFlash.en=1
@@ -1113,67 +1160,80 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardMedia")
{ {
page cardMedia page cardMedia
} }
if(tId.txt=="cardAlarm")
{
page cardAlarm
}
} }
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
@@ -1196,14 +1256,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardAlarm"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -429,7 +429,7 @@ Text tIcon1
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -459,7 +459,7 @@ Text tIcon2
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -489,7 +489,7 @@ Text tIcon3
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -519,7 +519,7 @@ Text tIcon4
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
@@ -1431,7 +1431,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardEntities,bPrev" tSend.txt="event,buttonPress2,cardEntities,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -2060,15 +2067,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis bUp1,0 vis bUp1,0
@@ -2083,16 +2117,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
if(type1.txt=="shutter") if(type1.txt=="shutter")
@@ -2115,7 +2149,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -2129,7 +2163,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -2146,7 +2180,7 @@ Timer tmSerial
bText1.pco=65535 bText1.pco=65535
bText1.pco2=65535 bText1.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="button") if(type1.txt=="button")
{ {
@@ -2161,7 +2195,7 @@ Timer tmSerial
bText1.pco=1374 bText1.pco=1374
bText1.pco2=1374 bText1.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="number") if(type1.txt=="number")
{ {
@@ -2174,7 +2208,7 @@ Timer tmSerial
vis hSlider1,1 vis hSlider1,1
vis nNum1,1 vis nNum1,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
//first value is current value //first value is current value
spstr bText1.txt,tTmp.txt,"|",0 spstr bText1.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2190,9 +2224,9 @@ Timer tmSerial
hSlider1.maxval=sys0 hSlider1.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis bUp2,0 vis bUp2,0
@@ -2207,16 +2241,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1
vis tIcon2,1 vis tIcon2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon2.pco=sys0 tIcon2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
if(type2.txt=="shutter") if(type2.txt=="shutter")
@@ -2239,7 +2273,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -2253,7 +2287,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -2270,7 +2304,7 @@ Timer tmSerial
bText2.pco=65535 bText2.pco=65535
bText2.pco2=65535 bText2.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="button") if(type2.txt=="button")
{ {
@@ -2285,7 +2319,7 @@ Timer tmSerial
bText2.pco=1374 bText2.pco=1374
bText2.pco2=1374 bText2.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="number") if(type2.txt=="number")
{ {
@@ -2298,7 +2332,7 @@ Timer tmSerial
vis hSlider2,1 vis hSlider2,1
vis nNum2,1 vis nNum2,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
//first value is current value //first value is current value
spstr bText2.txt,tTmp.txt,"|",0 spstr bText2.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2314,9 +2348,9 @@ Timer tmSerial
hSlider2.maxval=sys0 hSlider2.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis bUp3,0 vis bUp3,0
@@ -2331,16 +2365,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1
vis tIcon3,1 vis tIcon3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon3.pco=sys0 tIcon3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
if(type3.txt=="shutter") if(type3.txt=="shutter")
@@ -2363,7 +2397,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -2377,7 +2411,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -2394,7 +2428,7 @@ Timer tmSerial
bText3.pco=65535 bText3.pco=65535
bText3.pco2=65535 bText3.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="button") if(type3.txt=="button")
{ {
@@ -2409,7 +2443,7 @@ Timer tmSerial
bText3.pco=1374 bText3.pco=1374
bText3.pco2=1374 bText3.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="number") if(type3.txt=="number")
{ {
@@ -2422,7 +2456,7 @@ Timer tmSerial
vis hSlider3,1 vis hSlider3,1
vis nNum3,1 vis nNum3,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
//first value is current value //first value is current value
spstr bText3.txt,tTmp.txt,"|",0 spstr bText3.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2438,9 +2472,9 @@ Timer tmSerial
hSlider3.maxval=sys0 hSlider3.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis bUp4,0 vis bUp4,0
@@ -2455,16 +2489,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1
vis tIcon4,1 vis tIcon4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon4.pco=sys0 tIcon4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
if(type4.txt=="shutter") if(type4.txt=="shutter")
@@ -2487,7 +2521,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -2501,7 +2535,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -2518,7 +2552,7 @@ Timer tmSerial
bText4.pco=65535 bText4.pco=65535
bText4.pco2=65535 bText4.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="button") if(type4.txt=="button")
{ {
@@ -2533,7 +2567,7 @@ Timer tmSerial
bText4.pco=1374 bText4.pco=1374
bText4.pco2=1374 bText4.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="number") if(type4.txt=="number")
{ {
@@ -2546,7 +2580,7 @@ Timer tmSerial
vis hSlider4,1 vis hSlider4,1
vis nNum4,1 vis nNum4,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
//first value is current value //first value is current value
spstr bText4.txt,tTmp.txt,"|",0 spstr bText4.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -2566,11 +2600,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -2620,23 +2654,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -2660,14 +2694,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardEntities"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -515,7 +515,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardGrid,bPrev" tSend.txt="event,buttonPress2,cardGrid,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1000,15 +1007,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis tEntity1,0 vis tEntity1,0
@@ -1016,22 +1050,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1
vis bEntity1,1 vis bEntity1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity1.pco=sys0 bEntity1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis tEntity2,0 vis tEntity2,0
@@ -1039,22 +1073,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1
vis bEntity2,1 vis bEntity2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity2.pco=sys0 bEntity2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis tEntity3,0 vis tEntity3,0
@@ -1062,22 +1096,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1
vis bEntity3,1 vis bEntity3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity3.pco=sys0 bEntity3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis tEntity4,0 vis tEntity4,0
@@ -1085,22 +1119,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1
vis bEntity4,1 vis bEntity4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity4.pco=sys0 bEntity4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis tEntity5,0 vis tEntity5,0
@@ -1108,22 +1142,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1
vis bEntity5,1 vis bEntity5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity5.pco=sys0 bEntity5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis tEntity6,0 vis tEntity6,0
@@ -1131,16 +1165,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1
vis bEntity6,1 vis bEntity6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity6.pco=sys0 bEntity6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
} }
@@ -1148,11 +1182,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1202,23 +1236,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -1242,14 +1276,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardGrid"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -856,7 +856,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardMedia,bPrev" tSend.txt="event,buttonPress2,cardMedia,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -920,31 +927,58 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,"|",1
//heading //heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//title //title
spstr strCommand.txt,tTitle.txt,"|",4 spstr strCommand.txt,tTitle.txt,"~",5
//author //author
spstr strCommand.txt,tAuthor.txt,"|",5 spstr strCommand.txt,tAuthor.txt,"~",6
//volume //volume
spstr strCommand.txt,tTmp.txt,"|",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hVolume.val=sys0 hVolume.val=sys0
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1 substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1
//speaker current //speaker current
spstr strCommand.txt,tSpeaker.txt,"|",8 spstr strCommand.txt,tSpeaker.txt,"~",9
if(tSpeaker.txt!="") if(tSpeaker.txt!="")
{ {
tSpeaker.pco=1374 tSpeaker.pco=1374
@@ -953,14 +987,14 @@ Timer tmSerial
tSpeaker.pco=65535 tSpeaker.pco=65535
} }
//speaker list //speaker list
spstr strCommand.txt,vaSpeakerList.txt,"|",9 spstr strCommand.txt,vaSpeakerList.txt,"~",10
if(vaSpeakerList.txt=="") if(vaSpeakerList.txt=="")
{ {
vis t6,0 vis t6,0
} }
vaSpeakerPos.val=0 vaSpeakerPos.val=0
// on off button // on off button
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",11
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t5,0 vis t5,0
@@ -973,62 +1007,75 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
@@ -1065,14 +1112,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardMedia"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -683,7 +683,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardThermo,bPrev" tSend.txt="event,buttonPress2,cardThermo,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1188,29 +1195,56 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,",",1
//heading //heading
spstr strCommand.txt,tHeading.txt,",",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//currentTemp //currentTemp
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,xTempCurr.val,0,0 covx tTmp.txt,xTempCurr.val,0,0
//dstTemp //dstTemp
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,xTempDest.val,0,0 covx tTmp.txt,xTempDest.val,0,0
//status //status
spstr strCommand.txt,tStatus.txt,",",5 spstr strCommand.txt,tStatus.txt,"~",6
//minTemp //minTemp
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,xTempMin.val,0,0 covx tTmp.txt,xTempMin.val,0,0
//maxTemp //maxTemp
spstr strCommand.txt,tTmp.txt,",",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,xTempMax.val,0,0 covx tTmp.txt,xTempMax.val,0,0
//tempStep //tempStep
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,xTempStep.val,0,0 covx tTmp.txt,xTempStep.val,0,0
// disable all buttons // disable all buttons
vis bt0,0 vis bt0,0
@@ -1223,232 +1257,237 @@ Timer tmSerial
vis bt7,0 vis bt7,0
vis bt8,0 vis bt8,0
//bt0 //bt0
spstr strCommand.txt,tTmp.txt,",",9 spstr strCommand.txt,tTmp.txt,"~",10
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt0.txt,sys0,1 substr pageIcons.tIcons.txt,bt0.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,bt0.pco2,0,0 covx tTmp.txt,bt0.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,bt0.val,0,0 covx tTmp.txt,bt0.val,0,0
// save action // save action
spstr strCommand.txt,va0.txt,",",12 spstr strCommand.txt,va0.txt,"~",13
//enable //enable
vis bt0,1 vis bt0,1
} } //bt1
//bt1 spstr strCommand.txt,tTmp.txt,"~",14
spstr strCommand.txt,tTmp.txt,",",13
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt1.txt,sys0,1 substr pageIcons.tIcons.txt,bt1.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,bt1.pco2,0,0 covx tTmp.txt,bt1.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",15 spstr strCommand.txt,tTmp.txt,"~",16
covx tTmp.txt,bt1.val,0,0 covx tTmp.txt,bt1.val,0,0
// save action // save action
spstr strCommand.txt,va1.txt,",",16 spstr strCommand.txt,va1.txt,"~",17
//enable //enable
vis bt1,1 vis bt1,1
} } //bt2
//bt2 spstr strCommand.txt,tTmp.txt,"~",18
spstr strCommand.txt,tTmp.txt,",",17
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt2.txt,sys0,1 substr pageIcons.tIcons.txt,bt2.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",19
covx tTmp.txt,bt2.pco2,0,0 covx tTmp.txt,bt2.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",19 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,bt2.val,0,0 covx tTmp.txt,bt2.val,0,0
// save action // save action
spstr strCommand.txt,va2.txt,",",20 spstr strCommand.txt,va2.txt,"~",21
//enable //enable
vis bt2,1 vis bt2,1
} } //bt3
//bt3 spstr strCommand.txt,tTmp.txt,"~",22
spstr strCommand.txt,tTmp.txt,",",21
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt3.txt,sys0,1 substr pageIcons.tIcons.txt,bt3.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",22 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,bt3.pco2,0,0 covx tTmp.txt,bt3.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,bt3.val,0,0 covx tTmp.txt,bt3.val,0,0
// save action // save action
spstr strCommand.txt,va3.txt,",",24 spstr strCommand.txt,va3.txt,"~",25
//enable //enable
vis bt3,1 vis bt3,1
} } //bt4
//bt4 spstr strCommand.txt,tTmp.txt,"~",26
spstr strCommand.txt,tTmp.txt,",",25
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt4.txt,sys0,1 substr pageIcons.tIcons.txt,bt4.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",27
covx tTmp.txt,bt4.pco2,0,0 covx tTmp.txt,bt4.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",27 spstr strCommand.txt,tTmp.txt,"~",28
covx tTmp.txt,bt4.val,0,0 covx tTmp.txt,bt4.val,0,0
// save action // save action
spstr strCommand.txt,va4.txt,",",28 spstr strCommand.txt,va4.txt,"~",29
//enable //enable
vis bt4,1 vis bt4,1
} } //bt5
//bt5 spstr strCommand.txt,tTmp.txt,"~",30
spstr strCommand.txt,tTmp.txt,",",29
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt5.txt,sys0,1 substr pageIcons.tIcons.txt,bt5.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",31
covx tTmp.txt,bt5.pco2,0,0 covx tTmp.txt,bt5.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",31 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,bt5.val,0,0 covx tTmp.txt,bt5.val,0,0
// save action // save action
spstr strCommand.txt,va5.txt,",",32 spstr strCommand.txt,va5.txt,"~",33
//enable //enable
vis bt5,1 vis bt5,1
} } //bt6
//bt6 spstr strCommand.txt,tTmp.txt,"~",34
spstr strCommand.txt,tTmp.txt,",",33
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt6.txt,sys0,1 substr pageIcons.tIcons.txt,bt6.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",34 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,bt6.pco2,0,0 covx tTmp.txt,bt6.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,bt6.val,0,0 covx tTmp.txt,bt6.val,0,0
// save action // save action
spstr strCommand.txt,va6.txt,",",36 spstr strCommand.txt,va6.txt,"~",37
//enable //enable
vis bt6,1 vis bt6,1
} } //bt7
//bt7 spstr strCommand.txt,tTmp.txt,"~",38
spstr strCommand.txt,tTmp.txt,",",37
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt7.txt,sys0,1 substr pageIcons.tIcons.txt,bt7.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",39
covx tTmp.txt,bt7.pco2,0,0 covx tTmp.txt,bt7.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",39 spstr strCommand.txt,tTmp.txt,"~",40
covx tTmp.txt,bt7.val,0,0 covx tTmp.txt,bt7.val,0,0
// save action // save action
spstr strCommand.txt,va7.txt,",",40 spstr strCommand.txt,va7.txt,"~",41
//enable //enable
vis bt7,1 vis bt7,1
} } //bt8
//bt8 spstr strCommand.txt,tTmp.txt,"~",42
spstr strCommand.txt,tTmp.txt,",",41
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt8.txt,sys0,1 substr pageIcons.tIcons.txt,bt8.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",42 spstr strCommand.txt,tTmp.txt,"~",43
covx tTmp.txt,bt8.pco2,0,0 covx tTmp.txt,bt8.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",43 spstr strCommand.txt,tTmp.txt,"~",44
covx tTmp.txt,bt8.val,0,0 covx tTmp.txt,bt8.val,0,0
// save action // save action
spstr strCommand.txt,va8.txt,",",44 spstr strCommand.txt,va8.txt,"~",45
//enable //enable
vis bt8,1 vis bt8,1
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,sleepTimeout,0,0
}
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardGrid")
{ {
page cardMedia page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
page cardAlarm page cardAlarm
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0
}
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1470,14 +1509,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardThermo"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -1,11 +1,7 @@
Program.s Program.s
0 Component(s) 0 Component(s)
10 Line(s) of event code 11 Line(s) of event code
10 Unique line(s) of event code 11 Unique line(s) of event code
pageIcons
5 Component(s)
0 Line(s) of event code
0 Unique line(s) of event code
pageTest pageTest
13 Component(s) 13 Component(s)
13 Line(s) of event code 13 Line(s) of event code
@@ -14,49 +10,53 @@ pageSerialTest
13 Component(s) 13 Component(s)
48 Line(s) of event code 48 Line(s) of event code
43 Unique line(s) of event code 43 Unique line(s) of event code
popupShutter pageIcons
19 Component(s) 7 Component(s)
179 Line(s) of event code 0 Line(s) of event code
102 Unique line(s) of event code 0 Unique line(s) of event code
popupNotify popupNotify
17 Component(s) 17 Component(s)
179 Line(s) of event code 178 Line(s) of event code
118 Unique line(s) of event code 117 Unique line(s) of event code
cardGrid popupShutter
39 Component(s) 19 Component(s)
388 Line(s) of event code 178 Line(s) of event code
224 Unique line(s) of event code 101 Unique line(s) of event code
popupLight
27 Component(s)
322 Line(s) of event code
173 Unique line(s) of event code
pageStartup pageStartup
19 Component(s) 19 Component(s)
150 Line(s) of event code 150 Line(s) of event code
113 Unique line(s) of event code 113 Unique line(s) of event code
cardMedia
30 Component(s)
278 Line(s) of event code
139 Unique line(s) of event code
cardAlarm
35 Component(s)
276 Line(s) of event code
172 Unique line(s) of event code
popupLight
27 Component(s)
323 Line(s) of event code
174 Unique line(s) of event code
screensaver
31 Component(s)
183 Line(s) of event code
133 Unique line(s) of event code
cardThermo cardThermo
41 Component(s) 41 Component(s)
405 Line(s) of event code 460 Line(s) of event code
217 Unique line(s) of event code 284 Unique line(s) of event code
cardMedia
30 Component(s)
333 Line(s) of event code
170 Unique line(s) of event code
screensaver
33 Component(s)
207 Line(s) of event code
158 Unique line(s) of event code
cardAlarm
35 Component(s)
345 Line(s) of event code
214 Unique line(s) of event code
cardGrid
39 Component(s)
430 Line(s) of event code
249 Unique line(s) of event code
cardEntities cardEntities
62 Component(s) 62 Component(s)
930 Line(s) of event code 972 Line(s) of event code
388 Unique line(s) of event code 413 Unique line(s) of event code
Total Total
13 Page(s) 13 Page(s)
351 Component(s) 355 Component(s)
3362 Line(s) of event code 3647 Line(s) of event code
909 Unique line(s) of event code 1040 Unique line(s) of event code

View File

@@ -18,6 +18,20 @@ Page pageIcons
Fill : solid color Fill : solid color
Back. Color : 65535 Back. Color : 65535
Variable (string) vaTime
Attributes
ID : 5
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
ID : 6
Scope : global
Text :
Max. Text Size: 35
Text tIcons Text tIcons
Attributes Attributes
ID : 2 ID : 2
@@ -42,8 +56,8 @@ Text tIcons
Horizontal Alignment : left Horizontal Alignment : left
Vertical Alignment : top Vertical Alignment : top
Input Type : character Input Type : character
Text :  Text : 
Max. Text Size : 150 Max. Text Size : 170
Word wrap : enabled Word wrap : enabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0

View File

@@ -402,7 +402,7 @@ Text tVersion
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 23 Text : 28
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -552,27 +552,27 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
@@ -580,11 +580,11 @@ Timer tmSerial
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -727,7 +727,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -785,24 +784,24 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// get Button State // get Button State
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
// get Brightness value // get Brightness value
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",4
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t1,0 vis t1,0
@@ -820,7 +819,7 @@ Timer tmSerial
} }
} }
// get ColorTemp value // get ColorTemp value
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis hTempSlider,0 vis hTempSlider,0
@@ -864,7 +863,7 @@ Timer tmSerial
} }
} }
// get Color value // get Color value
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
// disable -> isn't supported // disable -> isn't supported
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
@@ -888,34 +887,34 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -403,7 +403,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -461,70 +460,70 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get entn // get entn
spstr strCommand.txt,entn.txt,"|",1 spstr strCommand.txt,entn.txt,"~",1
// get Heading // get Heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",2
// heading color // heading color
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tHeading.pco=sys0 tHeading.pco=sys0
// get b1 // get b1
spstr strCommand.txt,b1.txt,"|",4 spstr strCommand.txt,b1.txt,"~",4
if(b1.txt!="") if(b1.txt!="")
{ {
vis b1,1 vis b1,1
} }
// b1 color // b1 color
spstr strCommand.txt,tTmp.txt,"|",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b1.pco=sys0 b1.pco=sys0
// get b2 // get b2
spstr strCommand.txt,b2.txt,"|",6 spstr strCommand.txt,b2.txt,"~",6
if(b2.txt!="") if(b2.txt!="")
{ {
vis b2,1 vis b2,1
} }
// b2 color // b2 color
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b2.pco=sys0 b2.pco=sys0
// get tText // get tText
spstr strCommand.txt,tText.txt,"|",8 spstr strCommand.txt,tText.txt,"~",8
// tText color // tText color
spstr strCommand.txt,tTmp.txt,"|",9 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tText.pco=sys0 tText.pco=sys0
//preserve old sleepTimeout //preserve old sleepTimeout
vaOldSleepT.val=sleepTimeout vaOldSleepT.val=sleepTimeout
// sleep timeout // sleep timeout
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
sleepTimeout=sys0 sleepTimeout=sys0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="exitPopup") if(tInstruction.txt=="exitPopup")
@@ -536,11 +535,11 @@ Timer tmSerial
sleepTimeout=vaOldSleepT.val sleepTimeout=vaOldSleepT.val
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -532,7 +532,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -590,45 +589,45 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get Position value // get Position value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hPosition.val=sys0 hPosition.val=sys0
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -22,111 +22,46 @@ Page screensaver
Preinitialize Event Preinitialize Event
recmod=1 recmod=1
bauds=115200 bauds=115200
vis originPage,0
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis p0,0 vis p0,0
//load gloabl time string from pageIcons //load gloabl time string from pageIcons
//tTime.txt=vaTime.txt //tTime.txt=vaTime.txt
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
} }
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
dim=dimValue dim=dimValue
vis tSend,0 vis tSend,0
//page open event //page open event
// clear weather elements, to keep example content in HMI // clear weather elements, to keep example content in HMI
tMainIcon.txt=""
tMainText.txt=""
tForecast1.txt=""
tF1Icon.txt=""
tForecast1Val.txt=""
tForecast2.txt=""
tF2Icon.txt=""
tForecast2Val.txt=""
tSend.txt="event,screensaverOpen"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
ID : 5 ID : 4
Scope : local Scope : local
Text : Text :
Max. Text Size: 200 Max. Text Size: 200
Variable (string) vaTime
Attributes
ID : 10
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
ID : 11
Scope : global
Text :
Max. Text Size: 30
Variable (string) tId Variable (string) tId
Attributes Attributes
ID : 22 ID : 19
Scope : local Scope : local
Text : Text :
Max. Text Size: 25 Max. Text Size: 25
Variable (int32) vaTap Variable (int32) vaTap
Attributes Attributes
ID : 30 ID : 27
Scope: local Scope: local
Value: 0 Value: 0
Number originPage
Attributes
ID : 3
Scope : global
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 452
y coordinate : 267
Width : 24
Height : 49
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 65535
Font Color : 0
Horizontal Alignment : center
Vertical Alignment : center
Value : 0
Significant digits shown : all
Format : decimal
Word wrap : enabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tInstruction Text tInstruction
Attributes Attributes
ID : 6 ID : 5
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -156,7 +91,7 @@ Text tInstruction
Text tTmp Text tTmp
Attributes Attributes
ID : 7 ID : 6
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -186,7 +121,7 @@ Text tTmp
Text tTime Text tTime
Attributes Attributes
ID : 8 ID : 7
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -216,7 +151,7 @@ Text tTime
Text tDate Text tDate
Attributes Attributes
ID : 9 ID : 8
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -239,14 +174,14 @@ Text tDate
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Tuesday, 08. March 2022 Text : Tuesday, 08. March 2022
Max. Text Size : 30 Max. Text Size : 35
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tSend Text tSend
Attributes Attributes
ID : 12 ID : 9
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -276,7 +211,7 @@ Text tSend
Text tMainIcon Text tMainIcon
Attributes Attributes
ID : 13 ID : 10
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -298,7 +233,7 @@ Text tMainIcon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -306,7 +241,7 @@ Text tMainIcon
Text tMainText Text tMainText
Attributes Attributes
ID : 14 ID : 11
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -328,7 +263,7 @@ Text tMainText
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 2,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -336,7 +271,7 @@ Text tMainText
Text tForecast1 Text tForecast1
Attributes Attributes
ID : 15 ID : 12
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -358,7 +293,7 @@ Text tForecast1
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Mi Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -366,16 +301,16 @@ Text tForecast1
Text tForecast1Val Text tForecast1Val
Attributes Attributes
ID : 16 ID : 13
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 126 x coordinate : 125
y coordinate : 277 y coordinate : 276
Width : 72 Width : 71
Height : 26 Height : 25
Effect : load Effect : load
Effect Priority : 0 Effect Priority : 0
Effect Time : 300 Effect Time : 300
@@ -388,7 +323,7 @@ Text tForecast1Val
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 9,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -396,7 +331,7 @@ Text tForecast1Val
Text tF1Icon Text tF1Icon
Attributes Attributes
ID : 17 ID : 14
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -418,7 +353,7 @@ Text tF1Icon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -426,7 +361,7 @@ Text tF1Icon
Text tForecast2 Text tForecast2
Attributes Attributes
ID : 18 ID : 15
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -448,7 +383,7 @@ Text tForecast2
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Do Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -456,7 +391,7 @@ Text tForecast2
Text tF2Icon Text tF2Icon
Attributes Attributes
ID : 19 ID : 16
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -478,7 +413,7 @@ Text tF2Icon
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -486,7 +421,7 @@ Text tF2Icon
Text tForecast2Val Text tForecast2Val
Attributes Attributes
ID : 20 ID : 17
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -508,7 +443,7 @@ Text tForecast2Val
Horizontal Alignment : center Horizontal Alignment : center
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : 11,9 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
@@ -516,7 +451,7 @@ Text tForecast2Val
Text t10 Text t10
Attributes Attributes
ID : 21 ID : 18
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -546,7 +481,7 @@ Text t10
Text tAMPM Text tAMPM
Attributes Attributes
ID : 23 ID : 20
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -576,7 +511,7 @@ Text tAMPM
Text tForecast3Val Text tForecast3Val
Attributes Attributes
ID : 24 ID : 21
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -606,7 +541,7 @@ Text tForecast3Val
Text tF3Icon Text tF3Icon
Attributes Attributes
ID : 25 ID : 22
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -636,7 +571,7 @@ Text tF3Icon
Text tForecast3 Text tForecast3
Attributes Attributes
ID : 26 ID : 23
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -666,7 +601,7 @@ Text tForecast3
Text tForecast4 Text tForecast4
Attributes Attributes
ID : 27 ID : 24
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -696,7 +631,7 @@ Text tForecast4
Text tF4Icon Text tF4Icon
Attributes Attributes
ID : 28 ID : 25
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -719,14 +654,14 @@ Text tF4Icon
Vertical Alignment : center Vertical Alignment : center
Input Type : character Input Type : character
Text : Text :
Max. Text Size : 10 Max. Text Size : 5
Word wrap : disabled Word wrap : disabled
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tForecast4Val Text tForecast4Val
Attributes Attributes
ID : 29 ID : 26
Scope : local Scope : local
Dragging : 0 Dragging : 0
Disable release event after dragging: 0 Disable release event after dragging: 0
@@ -754,6 +689,126 @@ Text tForecast4Val
Horizontal Spacing : 0 Horizontal Spacing : 0
Vertical Spacing : 0 Vertical Spacing : 0
Text tMainTextAlt
Attributes
ID : 29
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 104
y coordinate : 210
Width : 106
Height : 42
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 2
Back. Color : 0
Font Color : 65535
Horizontal Alignment : left
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMainIconAlt
Attributes
ID : 30
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 0
y coordinate : 221
Width : 100
Height : 66
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 3
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMRIcon
Attributes
ID : 31
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 101
y coordinate : 266
Width : 40
Height : 35
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 1
Back. Color : 0
Font Color : 65535
Horizontal Alignment : center
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Text tMR
Attributes
ID : 32
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Opacity : 127
x coordinate : 144
y coordinate : 270
Width : 62
Height : 21
Effect : load
Effect Priority : 0
Effect Time : 300
Fill : solid color
Style : flat
Associated Keyboard : none
Font ID : 0
Back. Color : 0
Font Color : 65535
Horizontal Alignment : left
Vertical Alignment : center
Input Type : character
Text :
Max. Text Size : 10
Word wrap : disabled
Horizontal Spacing : 0
Vertical Spacing : 0
Picture p0 Picture p0
Attributes Attributes
ID : 1 ID : 1
@@ -773,7 +828,7 @@ Picture p0
Timer tmSerial Timer tmSerial
Attributes Attributes
ID : 4 ID : 3
Scope : local Scope : local
Period (ms): 50 Period (ms): 50
Enabled : yes Enabled : yes
@@ -822,7 +877,7 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="wake") if(tInstruction.txt=="wake")
{ {
//dim=100 //dim=100
@@ -831,16 +886,16 @@ Timer tmSerial
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
//get set time to global variable //get set time to global variable
spstr strCommand.txt,vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
@@ -849,66 +904,104 @@ Timer tmSerial
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
//get set date to global variable //get set date to global variable
spstr strCommand.txt,vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="weatherUpdate") if(tInstruction.txt=="weatherUpdate")
{ {
vis tMainIcon,1
vis tMainIconAlt,0
vis tMainText,1
vis tMainTextAlt,0
vis tMRIcon,0
vis tMR,0
//tMainIcon //tMainIcon
spstr strCommand.txt,tTmp.txt,"?",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1
tMainIconAlt.txt=tMainIcon.txt
//tMainText //tMainText
spstr strCommand.txt,tMainText.txt,"?",2 spstr strCommand.txt,tMainText.txt,"~",2
tMainTextAlt.txt=tMainText.txt
//tForecast1 //tForecast1
spstr strCommand.txt,tForecast1.txt,"?",3 spstr strCommand.txt,tForecast1.txt,"~",3
//tF1Icon //tF1Icon
spstr strCommand.txt,tTmp.txt,"?",4 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1
//tForecast1Val //tForecast1Val
spstr strCommand.txt,tForecast1Val.txt,"?",5 spstr strCommand.txt,tForecast1Val.txt,"~",5
//tForecast2 //tForecast2
spstr strCommand.txt,tForecast2.txt,"?",6 spstr strCommand.txt,tForecast2.txt,"~",6
//tF2Icon //tF2Icon
spstr strCommand.txt,tTmp.txt,"?",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1
//tForecast2Val //tForecast2Val
spstr strCommand.txt,tForecast2Val.txt,"?",8 spstr strCommand.txt,tForecast2Val.txt,"~",8
//tForecast3 //tForecast3
spstr strCommand.txt,tForecast3.txt,"?",9 spstr strCommand.txt,tForecast3.txt,"~",9
//tF3Icon //tF3Icon
spstr strCommand.txt,tTmp.txt,"?",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1
//tForecast3Val //tForecast3Val
spstr strCommand.txt,tForecast3Val.txt,"?",11 spstr strCommand.txt,tForecast3Val.txt,"~",11
//tForecast4 //tForecast4
spstr strCommand.txt,tForecast4.txt,"?",12 spstr strCommand.txt,tForecast4.txt,"~",12
//tF4Icon //tF4Icon
spstr strCommand.txt,tTmp.txt,"?",13 spstr strCommand.txt,tTmp.txt,"~",13
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1
//tForecast4Val //tForecast4Val
spstr strCommand.txt,tForecast4Val.txt,"?",14 spstr strCommand.txt,tForecast4Val.txt,"~",14
//alternative layout
//tMRIcon
spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMRIcon.txt,sys0,1
if(tTmp.txt!="")
{
//value for tMRIcon, activate alternative layout
vis tMainIcon,0
vis tMainText,0
vis tMainTextAlt,1
vis tMainIconAlt,1
vis tMRIcon,1
vis tMR,1
vis tForecast1,0
vis tF1Icon,0
vis tForecast1Val,0
//move forecast values to the right
tForecast4.txt=tForecast3.txt
tForecast3.txt=tForecast2.txt
tForecast2.txt=tForecast1.txt
tForecast4Val.txt=tForecast3Val.txt
tForecast3Val.txt=tForecast2Val.txt
tForecast2Val.txt=tForecast1Val.txt
tF4Icon.txt=tF3Icon.txt
tF3Icon.txt=tF2Icon.txt
tF2Icon.txt=tF1Icon.txt
}
//tMR
spstr strCommand.txt,tMR.txt,"~",16
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete u[2]+3 udelete u[2]+3
bufferPos=0 bufferPos=0
@@ -962,6 +1055,26 @@ Timer tmSerial
} }
} }
Timer tmSleep
Attributes
ID : 28
Scope : local
Period (ms): 1000
Enabled : yes
Events
Timer Event
if(sleepTimeout!=0&&dimValue!=dim)
{
sleepValue+=1
if(sleepTimeout<=sleepValue)
{
sleepValue=0
dim=dimValue
vaTap.val=0
}
}
TouchCap tc0 TouchCap tc0
Attributes Attributes
ID : 2 ID : 2
@@ -970,7 +1083,7 @@ TouchCap tc0
Events Events
Touch Press Event Touch Press Event
dim=100 dim=dimValueNormal
vaTap.val+=1 vaTap.val+=1
covx vaTap.val,tTmp.txt,0,0 covx vaTap.val,tTmp.txt,0,0
tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt
@@ -985,6 +1098,4 @@ TouchCap tc0
prints sys0,2 prints sys0,2
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
//dim=100
//page originPage.val

View File

@@ -10,6 +10,7 @@ Program.s
int sleepValue=0 int sleepValue=0
// dim value // dim value
int dimValue=40 int dimValue=40
int dimValueNormal=100
// fix touch offset // fix touch offset
lcd_dev fffb 0002 0000 0020 lcd_dev fffb 0002 0000 0020
page pageStartup page pageStartup

View File

@@ -17,7 +17,6 @@ Page cardAlarm
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis tId,0 vis tId,0
//vis nPageDisp,0
vis arm1,0 vis arm1,0
vis arm2,0 vis arm2,0
vis arm3,0 vis arm3,0
@@ -171,7 +170,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardAlarm,bPrev" tSend.txt="event,buttonPress2,cardAlarm,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -508,53 +514,80 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entn //entn
spstr strCommand.txt,entn.txt,",",1 spstr strCommand.txt,entn.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//text arm1 //text arm1
spstr strCommand.txt,arm1.txt,",",2 spstr strCommand.txt,arm1.txt,"~",3
if(arm1.txt!="") if(arm1.txt!="")
{ {
vis arm1,1 vis arm1,1
} }
//id arm1 //id arm1
spstr strCommand.txt,va1.txt,",",3 spstr strCommand.txt,va1.txt,"~",4
//text arm2 //text arm2
spstr strCommand.txt,arm2.txt,",",4 spstr strCommand.txt,arm2.txt,"~",5
if(arm2.txt!="") if(arm2.txt!="")
{ {
vis arm2,1 vis arm2,1
} }
//id arm2 //id arm2
spstr strCommand.txt,va2.txt,",",5 spstr strCommand.txt,va2.txt,"~",6
//text arm3 //text arm3
spstr strCommand.txt,arm3.txt,",",6 spstr strCommand.txt,arm3.txt,"~",7
if(arm3.txt!="") if(arm3.txt!="")
{ {
vis arm3,1 vis arm3,1
} }
//id arm3 //id arm3
spstr strCommand.txt,va3.txt,",",7 spstr strCommand.txt,va3.txt,"~",8
//text arm4 //text arm4
spstr strCommand.txt,arm4.txt,",",8 spstr strCommand.txt,arm4.txt,"~",9
if(arm4.txt!="") if(arm4.txt!="")
{ {
vis arm4,1 vis arm4,1
} }
//id arm4 //id arm4
spstr strCommand.txt,va4.txt,",",9 spstr strCommand.txt,va4.txt,"~",10
//icon //icon
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//icon color //icon color
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon.pco=sys0 tIcon.pco=sys0
//numpad status //numpad status
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",13
if(tTmp.txt!="disable") if(tTmp.txt!="disable")
{ {
vis b0,1 vis b0,1
@@ -569,9 +602,23 @@ Timer tmSerial
vis b9,1 vis b9,1
vis b10,1 vis b10,1
vis tCode,1 vis tCode,1
}else
{
vis b0,0
vis b1,0
vis b2,0
vis b3,0
vis b4,0
vis b5,0
vis b6,0
vis b7,0
vis b8,0
vis b9,0
vis b10,0
vis tCode,0
} }
//flashing status //flashing status
spstr strCommand.txt,tTmp.txt,",",13 spstr strCommand.txt,tTmp.txt,"~",14
if(tTmp.txt=="enable") if(tTmp.txt=="enable")
{ {
tmFlash.en=1 tmFlash.en=1
@@ -583,67 +630,80 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardMedia")
{ {
page cardMedia page cardMedia
} }
if(tId.txt=="cardAlarm")
{
page cardAlarm
}
} }
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
@@ -665,14 +725,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardAlarm"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -211,7 +211,7 @@ Text tIcon1
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Text tIcon2 Text tIcon2
Attributes Attributes
@@ -221,7 +221,7 @@ Text tIcon2
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tIcon3 Text tIcon3
Attributes Attributes
@@ -231,7 +231,7 @@ Text tIcon3
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 10 Max. Text Size : 5
Text tIcon4 Text tIcon4
Attributes Attributes
@@ -241,7 +241,7 @@ Text tIcon4
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 30 Max. Text Size : 5
Text tSend Text tSend
Attributes Attributes
@@ -714,7 +714,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardEntities,bPrev" tSend.txt="event,buttonPress2,cardEntities,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -1115,15 +1122,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,displayName,optionalValue]x4
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis bUp1,0 vis bUp1,0
@@ -1138,16 +1172,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
if(type1.txt=="shutter") if(type1.txt=="shutter")
@@ -1170,7 +1204,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -1184,7 +1218,7 @@ Timer tmSerial
vis hSlider1,0 vis hSlider1,0
vis nNum1,0 vis nNum1,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
} }
@@ -1201,7 +1235,7 @@ Timer tmSerial
bText1.pco=65535 bText1.pco=65535
bText1.pco2=65535 bText1.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="button") if(type1.txt=="button")
{ {
@@ -1216,7 +1250,7 @@ Timer tmSerial
bText1.pco=1374 bText1.pco=1374
bText1.pco2=1374 bText1.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
} }
if(type1.txt=="number") if(type1.txt=="number")
{ {
@@ -1229,7 +1263,7 @@ Timer tmSerial
vis hSlider1,1 vis hSlider1,1
vis nNum1,1 vis nNum1,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText1.txt,",",8 spstr strCommand.txt,bText1.txt,"~",8
//first value is current value //first value is current value
spstr bText1.txt,tTmp.txt,"|",0 spstr bText1.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1245,9 +1279,9 @@ Timer tmSerial
hSlider1.maxval=sys0 hSlider1.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis bUp2,0 vis bUp2,0
@@ -1262,16 +1296,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon2.txt,sys0,1
vis tIcon2,1 vis tIcon2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon2.pco=sys0 tIcon2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
if(type2.txt=="shutter") if(type2.txt=="shutter")
@@ -1294,7 +1328,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -1308,7 +1342,7 @@ Timer tmSerial
vis hSlider2,0 vis hSlider2,0
vis nNum2,0 vis nNum2,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",14
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff2.val=sys0 btOnOff2.val=sys0
} }
@@ -1325,7 +1359,7 @@ Timer tmSerial
bText2.pco=65535 bText2.pco=65535
bText2.pco2=65535 bText2.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="button") if(type2.txt=="button")
{ {
@@ -1340,7 +1374,7 @@ Timer tmSerial
bText2.pco=1374 bText2.pco=1374
bText2.pco2=1374 bText2.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
} }
if(type2.txt=="number") if(type2.txt=="number")
{ {
@@ -1353,7 +1387,7 @@ Timer tmSerial
vis hSlider2,1 vis hSlider2,1
vis nNum2,1 vis nNum2,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText2.txt,",",14 spstr strCommand.txt,bText2.txt,"~",14
//first value is current value //first value is current value
spstr bText2.txt,tTmp.txt,"|",0 spstr bText2.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1369,9 +1403,9 @@ Timer tmSerial
hSlider2.maxval=sys0 hSlider2.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis bUp3,0 vis bUp3,0
@@ -1386,16 +1420,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon3.txt,sys0,1
vis tIcon3,1 vis tIcon3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon3.pco=sys0 tIcon3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
if(type3.txt=="shutter") if(type3.txt=="shutter")
@@ -1418,7 +1452,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -1432,7 +1466,7 @@ Timer tmSerial
vis hSlider3,0 vis hSlider3,0
vis nNum3,0 vis nNum3,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",20 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff3.val=sys0 btOnOff3.val=sys0
} }
@@ -1449,7 +1483,7 @@ Timer tmSerial
bText3.pco=65535 bText3.pco=65535
bText3.pco2=65535 bText3.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="button") if(type3.txt=="button")
{ {
@@ -1464,7 +1498,7 @@ Timer tmSerial
bText3.pco=1374 bText3.pco=1374
bText3.pco2=1374 bText3.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
} }
if(type3.txt=="number") if(type3.txt=="number")
{ {
@@ -1477,7 +1511,7 @@ Timer tmSerial
vis hSlider3,1 vis hSlider3,1
vis nNum3,1 vis nNum3,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText3.txt,",",20 spstr strCommand.txt,bText3.txt,"~",20
//first value is current value //first value is current value
spstr bText3.txt,tTmp.txt,"|",0 spstr bText3.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1493,9 +1527,9 @@ Timer tmSerial
hSlider3.maxval=sys0 hSlider3.maxval=sys0
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis bUp4,0 vis bUp4,0
@@ -1510,16 +1544,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon4.txt,sys0,1
vis tIcon4,1 vis tIcon4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon4.pco=sys0 tIcon4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
if(type4.txt=="shutter") if(type4.txt=="shutter")
@@ -1542,7 +1576,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -1556,7 +1590,7 @@ Timer tmSerial
vis hSlider4,0 vis hSlider4,0
vis nNum4,0 vis nNum4,0
// get Button State (optional Value) // get Button State (optional Value)
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",26
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff4.val=sys0 btOnOff4.val=sys0
} }
@@ -1573,7 +1607,7 @@ Timer tmSerial
bText4.pco=65535 bText4.pco=65535
bText4.pco2=65535 bText4.pco2=65535
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="button") if(type4.txt=="button")
{ {
@@ -1588,7 +1622,7 @@ Timer tmSerial
bText4.pco=1374 bText4.pco=1374
bText4.pco2=1374 bText4.pco2=1374
// get Text (optional Value) // get Text (optional Value)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
} }
if(type4.txt=="number") if(type4.txt=="number")
{ {
@@ -1601,7 +1635,7 @@ Timer tmSerial
vis hSlider4,1 vis hSlider4,1
vis nNum4,1 vis nNum4,1
// get config (optional Value) (use bText as variable) // get config (optional Value) (use bText as variable)
spstr strCommand.txt,bText4.txt,",",26 spstr strCommand.txt,bText4.txt,"~",26
//first value is current value //first value is current value
spstr bText4.txt,tTmp.txt,"|",0 spstr bText4.txt,tTmp.txt,"|",0
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
@@ -1621,11 +1655,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -1675,23 +1709,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -1714,14 +1748,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardEntities"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -242,7 +242,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardGrid,bPrev" tSend.txt="event,buttonPress2,cardGrid,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -563,15 +570,42 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6 // command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
spstr strCommand.txt,tHeading.txt,",",1 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
// get Type // get Type
spstr strCommand.txt,type1.txt,",",3 spstr strCommand.txt,type1.txt,"~",3
// get internal name // get internal name
spstr strCommand.txt,entn1.txt,",",4 spstr strCommand.txt,entn1.txt,"~",4
if(type1.txt=="delete"||type1.txt=="") if(type1.txt=="delete"||type1.txt=="")
{ {
vis tEntity1,0 vis tEntity1,0
@@ -579,22 +613,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity1.txt,sys0,1
vis bEntity1,1 vis bEntity1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity1.pco=sys0 bEntity1.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity1.txt,",",7 spstr strCommand.txt,tEntity1.txt,"~",7
vis tEntity1,1 vis tEntity1,1
} }
// get Type // get Type
spstr strCommand.txt,type2.txt,",",9 spstr strCommand.txt,type2.txt,"~",9
// get internal name // get internal name
spstr strCommand.txt,entn2.txt,",",10 spstr strCommand.txt,entn2.txt,"~",10
if(type2.txt=="delete"||type2.txt=="") if(type2.txt=="delete"||type2.txt=="")
{ {
vis tEntity2,0 vis tEntity2,0
@@ -602,22 +636,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity2.txt,sys0,1
vis bEntity2,1 vis bEntity2,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",12 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity2.pco=sys0 bEntity2.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity2.txt,",",13 spstr strCommand.txt,tEntity2.txt,"~",13
vis tEntity2,1 vis tEntity2,1
} }
// get Type // get Type
spstr strCommand.txt,type3.txt,",",15 spstr strCommand.txt,type3.txt,"~",15
// get internal name // get internal name
spstr strCommand.txt,entn3.txt,",",16 spstr strCommand.txt,entn3.txt,"~",16
if(type3.txt=="delete"||type3.txt=="") if(type3.txt=="delete"||type3.txt=="")
{ {
vis tEntity3,0 vis tEntity3,0
@@ -625,22 +659,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",17 spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity3.txt,sys0,1
vis bEntity3,1 vis bEntity3,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",18
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity3.pco=sys0 bEntity3.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity3.txt,",",19 spstr strCommand.txt,tEntity3.txt,"~",19
vis tEntity3,1 vis tEntity3,1
} }
// get Type // get Type
spstr strCommand.txt,type4.txt,",",21 spstr strCommand.txt,type4.txt,"~",21
// get internal name // get internal name
spstr strCommand.txt,entn4.txt,",",22 spstr strCommand.txt,entn4.txt,"~",22
if(type4.txt=="delete"||type4.txt=="") if(type4.txt=="delete"||type4.txt=="")
{ {
vis tEntity4,0 vis tEntity4,0
@@ -648,22 +682,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity4.txt,sys0,1
vis bEntity4,1 vis bEntity4,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",24 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity4.pco=sys0 bEntity4.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity4.txt,",",25 spstr strCommand.txt,tEntity4.txt,"~",25
vis tEntity4,1 vis tEntity4,1
} }
// get Type // get Type
spstr strCommand.txt,type5.txt,",",27 spstr strCommand.txt,type5.txt,"~",27
// get internal name // get internal name
spstr strCommand.txt,entn5.txt,",",28 spstr strCommand.txt,entn5.txt,"~",28
if(type5.txt=="delete"||type5.txt=="") if(type5.txt=="delete"||type5.txt=="")
{ {
vis tEntity5,0 vis tEntity5,0
@@ -671,22 +705,22 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",29 spstr strCommand.txt,tTmp.txt,"~",29
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity5.txt,sys0,1
vis bEntity5,1 vis bEntity5,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",30
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity5.pco=sys0 bEntity5.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity5.txt,",",31 spstr strCommand.txt,tEntity5.txt,"~",31
vis tEntity5,1 vis tEntity5,1
} }
// get Type // get Type
spstr strCommand.txt,type6.txt,",",33 spstr strCommand.txt,type6.txt,"~",33
// get internal name // get internal name
spstr strCommand.txt,entn6.txt,",",34 spstr strCommand.txt,entn6.txt,"~",34
if(type6.txt=="delete"||type6.txt=="") if(type6.txt=="delete"||type6.txt=="")
{ {
vis tEntity6,0 vis tEntity6,0
@@ -694,16 +728,16 @@ Timer tmSerial
}else }else
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1 substr pageIcons.tIcons.txt,bEntity6.txt,sys0,1
vis bEntity6,1 vis bEntity6,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",36 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
bEntity6.pco=sys0 bEntity6.pco=sys0
// set name // set name
spstr strCommand.txt,tEntity6.txt,",",37 spstr strCommand.txt,tEntity6.txt,"~",37
vis tEntity6,1 vis tEntity6,1
} }
} }
@@ -711,11 +745,11 @@ Timer tmSerial
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -765,23 +799,23 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
// end of user code // end of user code
@@ -804,14 +838,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardGrid"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -435,7 +435,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardMedia,bPrev" tSend.txt="event,buttonPress2,cardMedia,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -498,31 +505,58 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,"|",1
//heading //heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon.txt,sys0,1
//title //title
spstr strCommand.txt,tTitle.txt,"|",4 spstr strCommand.txt,tTitle.txt,"~",5
//author //author
spstr strCommand.txt,tAuthor.txt,"|",5 spstr strCommand.txt,tAuthor.txt,"~",6
//volume //volume
spstr strCommand.txt,tTmp.txt,"|",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hVolume.val=sys0 hVolume.val=sys0
//icon //icon
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1 substr pageIcons.tIcons.txt,tPlayPause.txt,sys0,1
//speaker current //speaker current
spstr strCommand.txt,tSpeaker.txt,"|",8 spstr strCommand.txt,tSpeaker.txt,"~",9
if(tSpeaker.txt!="") if(tSpeaker.txt!="")
{ {
tSpeaker.pco=1374 tSpeaker.pco=1374
@@ -531,14 +565,14 @@ Timer tmSerial
tSpeaker.pco=65535 tSpeaker.pco=65535
} }
//speaker list //speaker list
spstr strCommand.txt,vaSpeakerList.txt,"|",9 spstr strCommand.txt,vaSpeakerList.txt,"~",10
if(vaSpeakerList.txt=="") if(vaSpeakerList.txt=="")
{ {
vis t6,0 vis t6,0
} }
vaSpeakerPos.val=0 vaSpeakerPos.val=0
// on off button // on off button
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",11
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t5,0 vis t5,0
@@ -551,62 +585,75 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardThermo") if(tId.txt=="cardGrid")
{ {
page cardThermo page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
@@ -642,14 +689,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardMedia"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -329,7 +329,14 @@ Button bPrev
Events Events
Touch Press Event Touch Press Event
tSend.txt="event,buttonPress2,cardThermo,bPrev" tSend.txt="event,buttonPress2,cardThermo,"
if(bPrev.txt=="")
{
tSend.txt+="bUp"
}else
{
tSend.txt+="bPrev"
}
//send calc crc //send calc crc
btlen tSend.txt,sys0 btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC crcrest 1,0xffff // reset CRC
@@ -635,29 +642,56 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpd") if(tInstruction.txt=="entityUpd")
{ {
//entity name
spstr strCommand.txt,entn.txt,",",1
//heading //heading
spstr strCommand.txt,tHeading.txt,",",2 spstr strCommand.txt,tHeading.txt,"~",1
// navigation icons
spstr strCommand.txt,tId.txt,"~",2
spstr tId.txt,tTmp.txt,"|",0
if(tTmp.txt=="0")
{
vis bPrev,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bPrev.txt=""
}
if(tTmp.txt=="2")
{
vis bPrev,1
bPrev.txt=""
}
spstr tId.txt,tTmp.txt,"|",1
if(tTmp.txt=="0")
{
vis bNext,0
}
if(tTmp.txt=="1")
{
vis bPrev,1
bNext.txt=""
}
//entity name
spstr strCommand.txt,entn.txt,"~",3
//currentTemp //currentTemp
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,xTempCurr.val,0,0 covx tTmp.txt,xTempCurr.val,0,0
//dstTemp //dstTemp
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,xTempDest.val,0,0 covx tTmp.txt,xTempDest.val,0,0
//status //status
spstr strCommand.txt,tStatus.txt,",",5 spstr strCommand.txt,tStatus.txt,"~",6
//minTemp //minTemp
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,xTempMin.val,0,0 covx tTmp.txt,xTempMin.val,0,0
//maxTemp //maxTemp
spstr strCommand.txt,tTmp.txt,",",7 spstr strCommand.txt,tTmp.txt,"~",8
covx tTmp.txt,xTempMax.val,0,0 covx tTmp.txt,xTempMax.val,0,0
//tempStep //tempStep
spstr strCommand.txt,tTmp.txt,",",8 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,xTempStep.val,0,0 covx tTmp.txt,xTempStep.val,0,0
// disable all buttons // disable all buttons
vis bt0,0 vis bt0,0
@@ -670,232 +704,237 @@ Timer tmSerial
vis bt7,0 vis bt7,0
vis bt8,0 vis bt8,0
//bt0 //bt0
spstr strCommand.txt,tTmp.txt,",",9 spstr strCommand.txt,tTmp.txt,"~",10
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt0.txt,sys0,1 substr pageIcons.tIcons.txt,bt0.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",10 spstr strCommand.txt,tTmp.txt,"~",11
covx tTmp.txt,bt0.pco2,0,0 covx tTmp.txt,bt0.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",11 spstr strCommand.txt,tTmp.txt,"~",12
covx tTmp.txt,bt0.val,0,0 covx tTmp.txt,bt0.val,0,0
// save action // save action
spstr strCommand.txt,va0.txt,",",12 spstr strCommand.txt,va0.txt,"~",13
//enable //enable
vis bt0,1 vis bt0,1
} } //bt1
//bt1 spstr strCommand.txt,tTmp.txt,"~",14
spstr strCommand.txt,tTmp.txt,",",13
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt1.txt,sys0,1 substr pageIcons.tIcons.txt,bt1.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",14 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,bt1.pco2,0,0 covx tTmp.txt,bt1.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",15 spstr strCommand.txt,tTmp.txt,"~",16
covx tTmp.txt,bt1.val,0,0 covx tTmp.txt,bt1.val,0,0
// save action // save action
spstr strCommand.txt,va1.txt,",",16 spstr strCommand.txt,va1.txt,"~",17
//enable //enable
vis bt1,1 vis bt1,1
} } //bt2
//bt2 spstr strCommand.txt,tTmp.txt,"~",18
spstr strCommand.txt,tTmp.txt,",",17
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt2.txt,sys0,1 substr pageIcons.tIcons.txt,bt2.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",18 spstr strCommand.txt,tTmp.txt,"~",19
covx tTmp.txt,bt2.pco2,0,0 covx tTmp.txt,bt2.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",19 spstr strCommand.txt,tTmp.txt,"~",20
covx tTmp.txt,bt2.val,0,0 covx tTmp.txt,bt2.val,0,0
// save action // save action
spstr strCommand.txt,va2.txt,",",20 spstr strCommand.txt,va2.txt,"~",21
//enable //enable
vis bt2,1 vis bt2,1
} } //bt3
//bt3 spstr strCommand.txt,tTmp.txt,"~",22
spstr strCommand.txt,tTmp.txt,",",21
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt3.txt,sys0,1 substr pageIcons.tIcons.txt,bt3.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",22 spstr strCommand.txt,tTmp.txt,"~",23
covx tTmp.txt,bt3.pco2,0,0 covx tTmp.txt,bt3.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",23 spstr strCommand.txt,tTmp.txt,"~",24
covx tTmp.txt,bt3.val,0,0 covx tTmp.txt,bt3.val,0,0
// save action // save action
spstr strCommand.txt,va3.txt,",",24 spstr strCommand.txt,va3.txt,"~",25
//enable //enable
vis bt3,1 vis bt3,1
} } //bt4
//bt4 spstr strCommand.txt,tTmp.txt,"~",26
spstr strCommand.txt,tTmp.txt,",",25
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt4.txt,sys0,1 substr pageIcons.tIcons.txt,bt4.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",26 spstr strCommand.txt,tTmp.txt,"~",27
covx tTmp.txt,bt4.pco2,0,0 covx tTmp.txt,bt4.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",27 spstr strCommand.txt,tTmp.txt,"~",28
covx tTmp.txt,bt4.val,0,0 covx tTmp.txt,bt4.val,0,0
// save action // save action
spstr strCommand.txt,va4.txt,",",28 spstr strCommand.txt,va4.txt,"~",29
//enable //enable
vis bt4,1 vis bt4,1
} } //bt5
//bt5 spstr strCommand.txt,tTmp.txt,"~",30
spstr strCommand.txt,tTmp.txt,",",29
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt5.txt,sys0,1 substr pageIcons.tIcons.txt,bt5.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",30 spstr strCommand.txt,tTmp.txt,"~",31
covx tTmp.txt,bt5.pco2,0,0 covx tTmp.txt,bt5.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",31 spstr strCommand.txt,tTmp.txt,"~",32
covx tTmp.txt,bt5.val,0,0 covx tTmp.txt,bt5.val,0,0
// save action // save action
spstr strCommand.txt,va5.txt,",",32 spstr strCommand.txt,va5.txt,"~",33
//enable //enable
vis bt5,1 vis bt5,1
} } //bt6
//bt6 spstr strCommand.txt,tTmp.txt,"~",34
spstr strCommand.txt,tTmp.txt,",",33
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt6.txt,sys0,1 substr pageIcons.tIcons.txt,bt6.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",34 spstr strCommand.txt,tTmp.txt,"~",35
covx tTmp.txt,bt6.pco2,0,0 covx tTmp.txt,bt6.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",35 spstr strCommand.txt,tTmp.txt,"~",36
covx tTmp.txt,bt6.val,0,0 covx tTmp.txt,bt6.val,0,0
// save action // save action
spstr strCommand.txt,va6.txt,",",36 spstr strCommand.txt,va6.txt,"~",37
//enable //enable
vis bt6,1 vis bt6,1
} } //bt7
//bt7 spstr strCommand.txt,tTmp.txt,"~",38
spstr strCommand.txt,tTmp.txt,",",37
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt7.txt,sys0,1 substr pageIcons.tIcons.txt,bt7.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",38 spstr strCommand.txt,tTmp.txt,"~",39
covx tTmp.txt,bt7.pco2,0,0 covx tTmp.txt,bt7.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",39 spstr strCommand.txt,tTmp.txt,"~",40
covx tTmp.txt,bt7.val,0,0 covx tTmp.txt,bt7.val,0,0
// save action // save action
spstr strCommand.txt,va7.txt,",",40 spstr strCommand.txt,va7.txt,"~",41
//enable //enable
vis bt7,1 vis bt7,1
} } //bt8
//bt8 spstr strCommand.txt,tTmp.txt,"~",42
spstr strCommand.txt,tTmp.txt,",",41
if(tTmp.txt!="") if(tTmp.txt!="")
{ {
// set icon // set icon
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,bt8.txt,sys0,1 substr pageIcons.tIcons.txt,bt8.txt,sys0,1
// set text color on active state // set text color on active state
spstr strCommand.txt,tTmp.txt,",",42 spstr strCommand.txt,tTmp.txt,"~",43
covx tTmp.txt,bt8.pco2,0,0 covx tTmp.txt,bt8.pco2,0,0
// set state // set state
spstr strCommand.txt,tTmp.txt,",",43 spstr strCommand.txt,tTmp.txt,"~",44
covx tTmp.txt,bt8.val,0,0 covx tTmp.txt,bt8.val,0,0
// save action // save action
spstr strCommand.txt,va8.txt,",",44 spstr strCommand.txt,va8.txt,"~",45
//enable //enable
vis bt8,1 vis bt8,1
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1
covx tTmp.txt,sleepTimeout,0,0
}
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
if(tId.txt=="popupLight") if(tId.txt=="pageStartup")
{ {
pageIcons.tTmp1.txt=tTmp.txt page pageStartup
page popupLight }
if(tId.txt=="screensaver")
{
page screensaver
} }
if(tId.txt=="cardEntities") if(tId.txt=="cardEntities")
{ {
page cardEntities page cardEntities
} }
if(tId.txt=="cardMedia") if(tId.txt=="cardGrid")
{ {
page cardMedia page cardGrid
} }
if(tId.txt=="pageStartup") if(tId.txt=="popupLight")
{ {
page pageStartup pageIcons.tTmp1.txt=tTmp.txt
page popupLight
}
if(tId.txt=="popupShutter")
{
pageIcons.tTmp1.txt=tTmp.txt
page popupShutter
} }
if(tId.txt=="popupNotify") if(tId.txt=="popupNotify")
{ {
page popupNotify page popupNotify
} }
if(tId.txt=="cardGrid") if(tId.txt=="cardThermo")
{ {
page cardGrid page cardThermo
}
if(tId.txt=="cardMedia")
{
page cardMedia
} }
if(tId.txt=="cardAlarm") if(tId.txt=="cardAlarm")
{ {
page cardAlarm page cardAlarm
} }
} }
if(tInstruction.txt=="time")
{
// get set time to global variable
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
}
if(tInstruction.txt=="date")
{
// get set date to global variable
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
}
if(tInstruction.txt=="dimmode")
{
// get value
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0
}
if(tInstruction.txt=="timeout")
{
//set timeout to global var
spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0
}
// end of user code // end of user code
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0
@@ -916,14 +955,25 @@ Timer tmSleep
Events Events
Timer Event Timer Event
if(sleepTimeout!=0) if(sleepTimeout!=0&&dimValue!=dim)
{ {
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
page screensaver dim=dimValue
tSend.txt="event,sleepReached,cardThermo"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
} }
} }

View File

@@ -10,6 +10,18 @@ Page pageIcons
Swide left page ID : disabled Swide left page ID : disabled
Swide right page ID : disabled Swide right page ID : disabled
Variable (string) vaTime
Attributes
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
Scope : global
Text :
Max. Text Size: 35
Text tIcons Text tIcons
Attributes Attributes
Scope : global Scope : global
@@ -17,8 +29,8 @@ Text tIcons
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text : 
Max. Text Size : 150 Max. Text Size : 170
Text tTmp1 Text tTmp1
Attributes Attributes

View File

@@ -152,7 +152,7 @@ Text tVersion
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 23 Text : 28
Max. Text Size : 10 Max. Text Size : 10
Picture p0 Picture p0
@@ -257,27 +257,27 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
@@ -285,11 +285,11 @@ Timer tmSerial
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -382,7 +382,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -439,24 +438,24 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// change icon // change icon
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1 substr pageIcons.tIcons.txt,tIcon1.txt,sys0,1
vis tIcon1,1 vis tIcon1,1
// change icon color // change icon color
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tIcon1.pco=sys0 tIcon1.pco=sys0
// get Button State // get Button State
spstr strCommand.txt,tTmp.txt,",",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
btOnOff1.val=sys0 btOnOff1.val=sys0
// get Brightness value // get Brightness value
spstr strCommand.txt,tTmp.txt,",",4 spstr strCommand.txt,tTmp.txt,"~",4
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis t1,0 vis t1,0
@@ -474,7 +473,7 @@ Timer tmSerial
} }
} }
// get ColorTemp value // get ColorTemp value
spstr strCommand.txt,tTmp.txt,",",5 spstr strCommand.txt,tTmp.txt,"~",5
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
vis hTempSlider,0 vis hTempSlider,0
@@ -518,7 +517,7 @@ Timer tmSerial
} }
} }
// get Color value // get Color value
spstr strCommand.txt,tTmp.txt,",",6 spstr strCommand.txt,tTmp.txt,"~",6
// disable -> isn't supported // disable -> isn't supported
if(tTmp.txt=="disable") if(tTmp.txt=="disable")
{ {
@@ -542,34 +541,34 @@ Timer tmSerial
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -195,7 +195,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -252,70 +251,70 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get entn // get entn
spstr strCommand.txt,entn.txt,"|",1 spstr strCommand.txt,entn.txt,"~",1
// get Heading // get Heading
spstr strCommand.txt,tHeading.txt,"|",2 spstr strCommand.txt,tHeading.txt,"~",2
// heading color // heading color
spstr strCommand.txt,tTmp.txt,"|",3 spstr strCommand.txt,tTmp.txt,"~",3
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tHeading.pco=sys0 tHeading.pco=sys0
// get b1 // get b1
spstr strCommand.txt,b1.txt,"|",4 spstr strCommand.txt,b1.txt,"~",4
if(b1.txt!="") if(b1.txt!="")
{ {
vis b1,1 vis b1,1
} }
// b1 color // b1 color
spstr strCommand.txt,tTmp.txt,"|",5 spstr strCommand.txt,tTmp.txt,"~",5
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b1.pco=sys0 b1.pco=sys0
// get b2 // get b2
spstr strCommand.txt,b2.txt,"|",6 spstr strCommand.txt,b2.txt,"~",6
if(b2.txt!="") if(b2.txt!="")
{ {
vis b2,1 vis b2,1
} }
// b2 color // b2 color
spstr strCommand.txt,tTmp.txt,"|",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
b2.pco=sys0 b2.pco=sys0
// get tText // get tText
spstr strCommand.txt,tText.txt,"|",8 spstr strCommand.txt,tText.txt,"~",8
// tText color // tText color
spstr strCommand.txt,tTmp.txt,"|",9 spstr strCommand.txt,tTmp.txt,"~",9
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
tText.pco=sys0 tText.pco=sys0
//preserve old sleepTimeout //preserve old sleepTimeout
vaOldSleepT.val=sleepTimeout vaOldSleepT.val=sleepTimeout
// sleep timeout // sleep timeout
spstr strCommand.txt,tTmp.txt,"|",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
sleepTimeout=sys0 sleepTimeout=sys0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="exitPopup") if(tInstruction.txt=="exitPopup")
@@ -327,11 +326,11 @@ Timer tmSerial
sleepTimeout=vaOldSleepT.val sleepTimeout=vaOldSleepT.val
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -268,7 +268,6 @@ Timer tmSleep
sleepValue+=1 sleepValue+=1
if(sleepTimeout<=sleepValue) if(sleepTimeout<=sleepValue)
{ {
screensaver.originPage.val=dp
sleepValue=0 sleepValue=0
click b0,1 click b0,1
click b0,0 click b0,0
@@ -325,45 +324,45 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="entityUpdateDetail") if(tInstruction.txt=="entityUpdateDetail")
{ {
// get Position value // get Position value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
hPosition.val=sys0 hPosition.val=sys0
} }
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
// get set time to global variable // get set time to global variable
spstr strCommand.txt,screensaver.vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
} }
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
// get set date to global variable // get set date to global variable
spstr strCommand.txt,screensaver.vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete payloadLength-1 udelete payloadLength-1
bufferPos=0 bufferPos=0

View File

@@ -14,43 +14,22 @@ Page screensaver
Preinitialize Event Preinitialize Event
recmod=1 recmod=1
bauds=115200 bauds=115200
vis originPage,0
vis tInstruction,0 vis tInstruction,0
vis tTmp,0 vis tTmp,0
vis p0,0 vis p0,0
//load gloabl time string from pageIcons //load gloabl time string from pageIcons
//tTime.txt=vaTime.txt //tTime.txt=vaTime.txt
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
} }
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
dim=dimValue dim=dimValue
vis tSend,0 vis tSend,0
//page open event //page open event
// clear weather elements, to keep example content in HMI // clear weather elements, to keep example content in HMI
tMainIcon.txt=""
tMainText.txt=""
tForecast1.txt=""
tF1Icon.txt=""
tForecast1Val.txt=""
tForecast2.txt=""
tF2Icon.txt=""
tForecast2Val.txt=""
tSend.txt="event,screensaverOpen"
//send calc crc
btlen tSend.txt,sys0
crcrest 1,0xffff // reset CRC
crcputh 55 bb
crcputs sys0,1
crcputs tSend.txt,0
//send cmd
printh 55 bb
prints sys0,2
prints tSend.txt,0
prints crcval,2
Variable (string) strCommand Variable (string) strCommand
Attributes Attributes
@@ -58,18 +37,6 @@ Variable (string) strCommand
Text : Text :
Max. Text Size: 200 Max. Text Size: 200
Variable (string) vaTime
Attributes
Scope : global
Text :
Max. Text Size: 15
Variable (string) vaDate
Attributes
Scope : global
Text :
Max. Text Size: 30
Variable (string) tId Variable (string) tId
Attributes Attributes
Scope : local Scope : local
@@ -81,15 +48,6 @@ Variable (int32) vaTap
Scope: local Scope: local
Value: 0 Value: 0
Number originPage
Attributes
Scope : global
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Value : 0
Text tInstruction Text tInstruction
Attributes Attributes
Scope : local Scope : local
@@ -128,7 +86,7 @@ Text tDate
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Tuesday, 08. March 2022 Text : Tuesday, 08. March 2022
Max. Text Size : 30 Max. Text Size : 35
Text tSend Text tSend
Attributes Attributes
@@ -147,7 +105,7 @@ Text tMainIcon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tMainText Text tMainText
@@ -157,7 +115,7 @@ Text tMainText
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 2,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast1 Text tForecast1
@@ -167,7 +125,7 @@ Text tForecast1
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Mi Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast1Val Text tForecast1Val
@@ -177,7 +135,7 @@ Text tForecast1Val
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 9,3 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text tF1Icon Text tF1Icon
@@ -187,7 +145,7 @@ Text tF1Icon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast2 Text tForecast2
@@ -197,7 +155,7 @@ Text tForecast2
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Do Text :
Max. Text Size : 10 Max. Text Size : 10
Text tF2Icon Text tF2Icon
@@ -207,7 +165,7 @@ Text tF2Icon
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text :  Text :
Max. Text Size : 10 Max. Text Size : 10
Text tForecast2Val Text tForecast2Val
@@ -217,7 +175,7 @@ Text tForecast2Val
Disable release event after dragging: 0 Disable release event after dragging: 0
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : 11,9 °C Text :
Max. Text Size : 10 Max. Text Size : 10
Text t10 Text t10
@@ -288,7 +246,7 @@ Text tF4Icon
Send Component ID : disabled Send Component ID : disabled
Associated Keyboard : none Associated Keyboard : none
Text : Text :
Max. Text Size : 10 Max. Text Size : 5
Text tForecast4Val Text tForecast4Val
Attributes Attributes
@@ -300,6 +258,46 @@ Text tForecast4Val
Text : Text :
Max. Text Size : 10 Max. Text Size : 10
Text tMainTextAlt
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMainIconAlt
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMRIcon
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Text tMR
Attributes
Scope : local
Dragging : 0
Disable release event after dragging: 0
Send Component ID : disabled
Associated Keyboard : none
Text :
Max. Text Size : 10
Picture p0 Picture p0
Attributes Attributes
Scope : local Scope : local
@@ -357,7 +355,7 @@ Timer tmSerial
// write command to variable strCommand // write command to variable strCommand
ucopy strCommand.txt,4,payloadLength-5,0 ucopy strCommand.txt,4,payloadLength-5,0
// write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default) // write instruction to tInstuction (debug output, but used as variable here, ui elements will be disabled by default)
spstr strCommand.txt,tInstruction.txt,",",0 spstr strCommand.txt,tInstruction.txt,"~",0
if(tInstruction.txt=="wake") if(tInstruction.txt=="wake")
{ {
//dim=100 //dim=100
@@ -366,16 +364,16 @@ Timer tmSerial
if(tInstruction.txt=="dimmode") if(tInstruction.txt=="dimmode")
{ {
// get value // get value
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,dimValue,0,0 covx tTmp.txt,dimValue,0,0
dim=dimValue dim=dimValue
} }
if(tInstruction.txt=="time") if(tInstruction.txt=="time")
{ {
//get set time to global variable //get set time to global variable
spstr strCommand.txt,vaTime.txt,",",1 spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
spstr vaTime.txt,tTime.txt,"?",0 spstr pageIcons.vaTime.txt,tTime.txt,"?",0
spstr vaTime.txt,tAMPM.txt,"?",1 spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
if(tAMPM.txt=="") if(tAMPM.txt=="")
{ {
vis tAMPM,0 vis tAMPM,0
@@ -384,66 +382,104 @@ Timer tmSerial
if(tInstruction.txt=="date") if(tInstruction.txt=="date")
{ {
//get set date to global variable //get set date to global variable
spstr strCommand.txt,vaDate.txt,"?",1 spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
tDate.txt=vaDate.txt tDate.txt=pageIcons.vaDate.txt
} }
if(tInstruction.txt=="timeout") if(tInstruction.txt=="timeout")
{ {
//set timeout to global var //set timeout to global var
spstr strCommand.txt,tTmp.txt,",",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sleepTimeout,0,0 covx tTmp.txt,sleepTimeout,0,0
} }
if(tInstruction.txt=="weatherUpdate") if(tInstruction.txt=="weatherUpdate")
{ {
vis tMainIcon,1
vis tMainIconAlt,0
vis tMainText,1
vis tMainTextAlt,0
vis tMRIcon,0
vis tMR,0
//tMainIcon //tMainIcon
spstr strCommand.txt,tTmp.txt,"?",1 spstr strCommand.txt,tTmp.txt,"~",1
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1 substr pageIcons.tIcons.txt,tMainIcon.txt,sys0,1
tMainIconAlt.txt=tMainIcon.txt
//tMainText //tMainText
spstr strCommand.txt,tMainText.txt,"?",2 spstr strCommand.txt,tMainText.txt,"~",2
tMainTextAlt.txt=tMainText.txt
//tForecast1 //tForecast1
spstr strCommand.txt,tForecast1.txt,"?",3 spstr strCommand.txt,tForecast1.txt,"~",3
//tF1Icon //tF1Icon
spstr strCommand.txt,tTmp.txt,"?",4 spstr strCommand.txt,tTmp.txt,"~",4
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF1Icon.txt,sys0,1
//tForecast1Val //tForecast1Val
spstr strCommand.txt,tForecast1Val.txt,"?",5 spstr strCommand.txt,tForecast1Val.txt,"~",5
//tForecast2 //tForecast2
spstr strCommand.txt,tForecast2.txt,"?",6 spstr strCommand.txt,tForecast2.txt,"~",6
//tF2Icon //tF2Icon
spstr strCommand.txt,tTmp.txt,"?",7 spstr strCommand.txt,tTmp.txt,"~",7
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF2Icon.txt,sys0,1
//tForecast2Val //tForecast2Val
spstr strCommand.txt,tForecast2Val.txt,"?",8 spstr strCommand.txt,tForecast2Val.txt,"~",8
//tForecast3 //tForecast3
spstr strCommand.txt,tForecast3.txt,"?",9 spstr strCommand.txt,tForecast3.txt,"~",9
//tF3Icon //tF3Icon
spstr strCommand.txt,tTmp.txt,"?",10 spstr strCommand.txt,tTmp.txt,"~",10
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF3Icon.txt,sys0,1
//tForecast3Val //tForecast3Val
spstr strCommand.txt,tForecast3Val.txt,"?",11 spstr strCommand.txt,tForecast3Val.txt,"~",11
//tForecast4 //tForecast4
spstr strCommand.txt,tForecast4.txt,"?",12 spstr strCommand.txt,tForecast4.txt,"~",12
//tF4Icon //tF4Icon
spstr strCommand.txt,tTmp.txt,"?",13 spstr strCommand.txt,tTmp.txt,"~",13
covx tTmp.txt,sys0,0,0 covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1 substr pageIcons.tIcons.txt,tF4Icon.txt,sys0,1
//tForecast4Val //tForecast4Val
spstr strCommand.txt,tForecast4Val.txt,"?",14 spstr strCommand.txt,tForecast4Val.txt,"~",14
//alternative layout
//tMRIcon
spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,sys0,0,0
substr pageIcons.tIcons.txt,tMRIcon.txt,sys0,1
if(tTmp.txt!="")
{
//value for tMRIcon, activate alternative layout
vis tMainIcon,0
vis tMainText,0
vis tMainTextAlt,1
vis tMainIconAlt,1
vis tMRIcon,1
vis tMR,1
vis tForecast1,0
vis tF1Icon,0
vis tForecast1Val,0
//move forecast values to the right
tForecast4.txt=tForecast3.txt
tForecast3.txt=tForecast2.txt
tForecast2.txt=tForecast1.txt
tForecast4Val.txt=tForecast3Val.txt
tForecast3Val.txt=tForecast2Val.txt
tForecast2Val.txt=tForecast1Val.txt
tF4Icon.txt=tF3Icon.txt
tF3Icon.txt=tF2Icon.txt
tF2Icon.txt=tF1Icon.txt
}
//tMR
spstr strCommand.txt,tMR.txt,"~",16
} }
if(tInstruction.txt=="pageType") if(tInstruction.txt=="pageType")
{ {
dim=100 dim=100
//command format pageType,specialPageName //command format pageType,specialPageName
//write name of speical page to tId //write name of speical page to tId
spstr strCommand.txt,tId.txt,",",1 spstr strCommand.txt,tId.txt,"~",1
//save second arg if there's one //save second arg if there's one
spstr strCommand.txt,tTmp.txt,",",2 spstr strCommand.txt,tTmp.txt,"~",2
//save third arg if there's one //save third arg if there's one
spstr strCommand.txt,pageIcons.tTmp2.txt,",",3 spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
//we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ... //we are going to exit this page with this command, so we have to clear the buffer, so we are not getting into a stupid loop ...
udelete u[2]+3 udelete u[2]+3
bufferPos=0 bufferPos=0
@@ -497,6 +533,25 @@ Timer tmSerial
} }
} }
Timer tmSleep
Attributes
Scope : local
Period (ms): 1000
Enabled : yes
Events
Timer Event
if(sleepTimeout!=0&&dimValue!=dim)
{
sleepValue+=1
if(sleepTimeout<=sleepValue)
{
sleepValue=0
dim=dimValue
vaTap.val=0
}
}
TouchCap tc0 TouchCap tc0
Attributes Attributes
Scope: local Scope: local
@@ -504,7 +559,7 @@ TouchCap tc0
Events Events
Touch Press Event Touch Press Event
dim=100 dim=dimValueNormal
vaTap.val+=1 vaTap.val+=1
covx vaTap.val,tTmp.txt,0,0 covx vaTap.val,tTmp.txt,0,0
tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt tSend.txt="event,buttonPress2,screensaver,bExit,"+tTmp.txt
@@ -519,6 +574,4 @@ TouchCap tc0
prints sys0,2 prints sys0,2
prints tSend.txt,0 prints tSend.txt,0
prints crcval,2 prints crcval,2
//dim=100
//page originPage.val

Binary file not shown.

Binary file not shown.

185
README.md
View File

@@ -4,9 +4,12 @@ If you like this project consider buying me a pizza 🍕 <a href="https://paypal
[![hacs_badge](https://img.shields.io/badge/HACS-Default-41BDF5.svg)](https://github.com/hacs/integration) [![hacs_badge](https://img.shields.io/badge/HACS-Default-41BDF5.svg)](https://github.com/hacs/integration)
![hacs validation](https://github.com/joBr99/nspanel-lovelace-ui/actions/workflows/hacs-validation.yaml/badge.svg) ![hacs validation](https://github.com/joBr99/nspanel-lovelace-ui/actions/workflows/hacs-validation.yaml/badge.svg)
[![Man Hours](https://img.shields.io/endpoint?url=https%3A%2F%2Fmh.jessemillar.com%2Fhours%3Frepo%3Dhttps%3A%2F%2Fgithub.com%2FjoBr99%2Fnspanel-lovelace-ui.git)](https://jessemillar.com/r/man-hours)
NsPanel Lovelace UI is a Firmware for the nextion screen inside of NSPanel in the Design of [HomeAssistant](https://www.home-assistant.io/)'s Lovelace UI Design. NsPanel Lovelace UI is a Firmware for the nextion screen inside of NSPanel in the Design of [HomeAssistant](https://www.home-assistant.io/)'s Lovelace UI Design.
EU Model and US Model supported (in portrait and landscape orientation)
## Features ## Features
- Entities Page with support for cover, switch, input_boolean, binary_sensor, sensor, button, number, scenes, script, input_button and light - Entities Page with support for cover, switch, input_boolean, binary_sensor, sensor, button, number, scenes, script, input_button and light
@@ -24,6 +27,10 @@ See the following picture to get an idea of the look of this firmware for NSPane
![screens](doc-pics/screens.png) ![screens](doc-pics/screens.png)
Some (not all) screenshots from the US Portrait Version:
![screens-us-p](doc-pics/screens-us-p.png)
## TLDR ## TLDR
1. Install Tasmota to NSPanel 1. Install Tasmota to NSPanel
2. Install Berry Driver in Tasmota and setup MQTT 2. Install Berry Driver in Tasmota and setup MQTT
@@ -181,7 +188,7 @@ See Tasmota [MQTT Documentation](https://tasmota.github.io/docs/MQTT/) for more
### Upload Berry Driver to Tasmota ### Upload Berry Driver to Tasmota
1. Download the autoexec.be berry driver from the latest release. (Development Version [Berry Driver from this Repository](tasmota/autoexec.be)) 1. Download the autoexec.be from the repository: [Berry Driver](tasmota/autoexec.be)
2. Go to `Consoles` > `Manage File System` in Tasmota and upload the previously downloaded file. 2. Go to `Consoles` > `Manage File System` in Tasmota and upload the previously downloaded file.
@@ -189,6 +196,8 @@ See Tasmota [MQTT Documentation](https://tasmota.github.io/docs/MQTT/) for more
### Flash Firmware to Nextion Screen ### Flash Firmware to Nextion Screen
Note for ioBroker Users: Check the Release Notes, if the ioBroker Backend is not up to date with the current release there will be a note and you have to flash the latest compatible version from there.
#### Use your own Webserver #### Use your own Webserver
Upload the nspanel.tft from the lastest release to a Webserver (for example www folder of Home Assistant) and execute the following command in Tasmota Console. (Development Version: [tft file from HMI folder](HMI/nspanel.tft)) Upload the nspanel.tft from the lastest release to a Webserver (for example www folder of Home Assistant) and execute the following command in Tasmota Console. (Development Version: [tft file from HMI folder](HMI/nspanel.tft))
@@ -246,7 +255,7 @@ Please see [appdaemon.yaml](appdaemon/appdaemon.yaml) as an exmaple.
### Configure your NSPanel in AppDaemon ### Configure your NSPanel in AppDaemon
Confiure your NSPanel as you like, you need to edit the `apps.yaml` inside of your Appdaemon config folder. Confiure your NSPanel as you like, you need to edit the `apps.yaml` inside of your Appdaemon config folder.
You can have multiple nspanel sections. You can have multiple nspanel sections. There are some more exmaples in the appdaemon folder of this repo.
```yaml ```yaml
--- ---
@@ -256,57 +265,63 @@ nspanel-1:
config: config:
panelRecvTopic: "tele/tasmota_your_mqtt_topic/RESULT" panelRecvTopic: "tele/tasmota_your_mqtt_topic/RESULT"
panelSendTopic: "cmnd/tasmota_your_mqtt_topic/CustomSend" panelSendTopic: "cmnd/tasmota_your_mqtt_topic/CustomSend"
#model: 'us-p' # uncomment this if you have the us version, see table below for more information updateMode: "auto-notify"
timeoutScreensaver: 20 sleepTimeout: 20
#brightnessScreensaver: 10 #sleepBrightness: 10
brightnessScreensaver: sleepBrightness:
- time: "7:00:00" - time: "7:00:00"
value: 10 value: 10
- time: "23:00:00" - time: "23:00:00"
value: 0 value: 0
locale: "de_DE" locale: "de_DE" # used for translations in translations.py and for localized date if babel python package is installed
dateFormatBabel: "full" screensaver:
timeFormat: "%H:%M" entity: weather.k3ll3r
dateFormat: "%A, %d. %B %Y" # ignored if babel python package is installed cards:
weather: weather.example
pages:
- type: cardEntities - type: cardEntities
heading: Example Page 1 entities:
items: - entity: switch.example_item
- cover.example_cover name: NameOverride
- switch.example_switch icon: lightbulb
- input_boolean.example_input_boolean - entity: light.example_item
- sensor.example_sensor - entity: cover.example_item
- entity: input_boolean.example_item
title: Example Entities 1
- type: cardEntities - type: cardEntities
heading: Example Page 2 entities:
items: - entity: switch.example_item
- button.example_button - entity: delete
- input_button.example_input_button - entity: cover.example_item
- light.light_example - entity: input_boolean.example_item
- delete # (read this as 'empty') title: Example Entities 2
- type: cardEntities - type: cardEntities
heading: Example Page 3 entities:
items: - entity: binary_sensor.example_item
- scene.example_scene - entity: sensor.example_item
- delete - entity: button.example_item
- delete - entity: number.example_item
- delete title: Example Entities 3
- type: cardEntities
entities:
- entity: scenes.example_item
- entity: script.example_item
- entity: button.example_item
- entity: input_button.example_item
title: Example Entities 4
- type: cardGrid - type: cardGrid
heading: Example Page 4 entities:
items: - entity: light.example_item
- light.light_example - entity: switch.example_item
- button.example_button - entity: delete
- cover.example_cover - entity: button.example_item
- scene.example_scene - entity: cover.example_item
- switch.example_switch - entity: delete # delete at the end is optional
- delete title: Exmaple Gird
- type: cardThermo - type: cardThermo
heading: Exmaple Thermostat entity: climate.example_item
item: climate.example_climate
- type: cardMedia - type: cardMedia
item: media_player.spotify_user entity: media_player.example_item
- type: cardAlarm - type: cardAlarm
item: alarm_control_panel.alarmo entity: alarm_control_panel.alarmo
``` ```
key | optional | type | default | description key | optional | type | default | description
@@ -323,27 +338,56 @@ key | optional | type | default | description
`panelSendTopic` | False | string | `cmnd/tasmota_your_mqtt_topic/CustomSend` | The mqtt topic used to send messages. `panelSendTopic` | False | string | `cmnd/tasmota_your_mqtt_topic/CustomSend` | The mqtt topic used to send messages.
`updateMode` | True | string | `auto-notify` | Update Mode; Possible values: "auto", "auto-notify", "manual" `updateMode` | True | string | `auto-notify` | Update Mode; Possible values: "auto", "auto-notify", "manual"
`model` | True | string | `eu` | Model; Possible values: "eu", "us-l" and "us-p" `model` | True | string | `eu` | Model; Possible values: "eu", "us-l" and "us-p"
`timeoutScreensaver` | True | integer | `20` | Timeout for the screen to enter screensaver, to disable screensaver use 0 `sleepTimeout` | True | integer | `20` | Timeout for the screen to enter screensaver, to disable screensaver use 0
`brightnessScreensaver` | True | integer/complex | `20` | Brightness for the screen to enter screensaver, see example below for complex/scheduled config. `sleepBrightness` | True | integer/complex | `20` | Brightness for the screen to enter screensaver, see example below for complex/scheduled config.
`brightnessScreensaverTracking` | True | string | None | Forces screensaver brightness to 0 in case entity state is not_home, can be a group, person or device_tracker entity. `sleepTracking` | True | string | None | Forces screensaver brightness to 0 in case entity state is not_home, can be a group, person or device_tracker entity.
`locale` | True | string | `en_US` | Used by babel to determinante Date format on screensaver, also used for localization. `locale` | True | string | `en_US` | Used by babel to determinante Date format on screensaver, also used for localization.
`dateFormatBabel` | True | string | `full` | formatting options on https://babel.pocoo.org/en/latest/dates.html?highlight=name%20of%20day#date-fields `dateFormatBabel` | True | string | `full` | formatting options on https://babel.pocoo.org/en/latest/dates.html?highlight=name%20of%20day#date-fields
`timeFormat` | True | string | `%H:%M` | Time Format on screensaver. Substring after `?` is displayed in a seperate smaller textbox. Useful for 12h time format with AM/PM `"%I:%M ?%p"` `timeFormat` | True | string | `%H:%M` | Time Format on screensaver. Substring after `?` is displayed in a seperate smaller textbox. Useful for 12h time format with AM/PM `"%I:%M ?%p"`
`dateFormat` | True | string | `%A, %d. %B %Y` | date format used if babel is not installed `dateFormat` | True | string | `%A, %d. %B %Y` | date format used if babel is not installed
`weather` | True | string | `weather.example` | weather entity from homeassistant `cards` | False | complex | | configuration for cards that are displayed on panel
`weatherOverrideForecast1` | True | string | `None` | sensor entity from home assistant here to override the first weather forecast item on the screensaver `screensaver` | True | complex | | configuration for screensaver
`weatherOverrideForecast2` | True | string | `None` | sensor entity from home assistant here to override the second weather forecast item on the screensaver `hiddenCards` | True | complex | | configuration for cards that can be accessed though navigate items
`weatherOverrideForecast3` | True | string | `None` | sensor entity from home assistant here to override the third weather forecast item on the screensaver
`weatherOverrideForecast4` | True | string | `None` | sensor entity from home assistant here to override the forth weather forecast item on the screensaver
`doubleTapToUnlock` | True | boolean | `False` | requires to tap screensaver two times
`pages` | False | complex | | configuration for pages on panel
#### Schedule screensaver brightness Possible configuration values for a card in card config:
key | optional | type | default | description
-- | -- | -- | -- | --
`type` | False | string | `None` | Used by navigate items
`entities` | False | complex | `None` | contains entities of the card, applys only to cardEntities and cardGrid
`title` | True | string | `None` | Title of the Page
`entity` | False | string | `None` | contains the entity of the current card, valid for cardThermo, cardAlarm and cardMedia
`key` | True | string | `None` | Used by navigate items
Possible configuration values for screensaver config:
key | optional | type | default | description
-- | -- | -- | -- | --
`entity` | True | string | `weather.example` | weather entity from homeassistant
`weatherUnit` | True | string | `celsius` | unit for temperature, valid values are `celsius` or `fahrenheit`
`weatherOverrideForecast1` | True | complex | `None` | sensor entity from home assistant here to override the first weather forecast item on the screensaver
`weatherOverrideForecast2` | True | complex | `None` | sensor entity from home assistant here to override the second weather forecast item on the screensaver
`weatherOverrideForecast3` | True | complex | `None` | sensor entity from home assistant here to override the third weather forecast item on the screensaver
`weatherOverrideForecast4` | True | complex | `None` | sensor entity from home assistant here to override the forth weather forecast item on the screensaver
`doubleTapToUnlock` | True | boolean | `False` | requires to tap screensaver two times
`alternativeLayout` | True | boolean | `False` | alternative layout with humidity
`key` | True | string | `None` | Used by navigate items
Example for the weatherOverride config options:
```yaml
weatherOverrideForecast4:
entity: sensor.example_item
name: name
icon: lightbulb
```
#### Schedule sleep brightness
It is possible to schedule a brightness change for the screen at specific times. It is possible to schedule a brightness change for the screen at specific times.
```yaml ```yaml
brightnessScreensaver: sleepBrightness:
- time: "7:00:00" - time: "7:00:00"
value: 10 value: 10
- time: "23:00:00" - time: "23:00:00"
@@ -356,17 +400,29 @@ To override Icons or Names of entities you can configure an icon and/or name in
Only the icons listed in the [Icon Table](HMI#icons-ids) are useable. Only the icons listed in the [Icon Table](HMI#icons-ids) are useable.
```yaml ```yaml
- type: cardGrid entities:
heading: Lights - entity: light.test_item
items: name: NameOverride
- light.wled
- light.schreibtischlampe
- switch.deckenbeleuchtung_hinten:
icon: lightbulb icon: lightbulb
name: Lampe ```
- delete
- delete #### Subpages
- type: cardMedia
You can configure entities with with the prefix `navigate`, that are navigating to cards, in case it's hidden page, the navigation items will change and the arrow is bringing you back to the current page on the top level.
```yaml
- entity: navigate.cardGrid_testKey
```
will allow you to navigate to a cardGrid page with the configured key testKey
```yaml
hiddenCards:
- type: cardGrid
title: Exmaple Grid
entities:
- entity: light.test_item
key: testKey
``` ```
## How to update ## How to update
@@ -400,7 +456,6 @@ Since release 1.1 you can update the berry driver directly from the Tasmota Cons
`UpdateDriverVersion https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be` `UpdateDriverVersion https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be`
## FAQ - Frequently Asked Questions ## FAQ - Frequently Asked Questions
### Flashing of the Display Firmware with FlashNextion doesn't work ### Flashing of the Display Firmware with FlashNextion doesn't work

View File

@@ -6,54 +6,72 @@ nspanel-1:
panelRecvTopic: "tele/tasmota_your_mqtt_topic/RESULT" panelRecvTopic: "tele/tasmota_your_mqtt_topic/RESULT"
panelSendTopic: "cmnd/tasmota_your_mqtt_topic/CustomSend" panelSendTopic: "cmnd/tasmota_your_mqtt_topic/CustomSend"
updateMode: "auto-notify" updateMode: "auto-notify"
timeoutScreensaver: 20 sleepTimeout: 20
#brightnessScreensaver: 10 #sleepBrightness: 10
brightnessScreensaver: sleepBrightness:
- time: "7:00:00" - time: "7:00:00"
value: 10 value: 10
- time: "23:00:00" - time: "23:00:00"
value: 0 value: 0
locale: "de_DE" # only used if babel python package is installed locale: "de_DE" # used for translations in translations.py and for localized date if babel python package is installed
dateFormatBabel: "full" # only used if babel python package is installed screensaver:
# formatting options on https://babel.pocoo.org/en/latest/dates.html?highlight=name%20of%20day#date-fields entity: weather.k3ll3r
timeFormat: "%H:%M" weatherOverrideForecast4:
dateFormat: "%A, %d. %B %Y" # ignored if babel python package is installed entity: sensor.example_item
weather: weather.example name: name
pages: icon: lightbulb
alternativeLayout: True
cards:
- type: cardEntities - type: cardEntities
heading: Example Page 1 entities:
items: - entity: switch.example_item
- cover.example_cover name: NameOverride
- switch.example_switch icon: lightbulb
- input_boolean.example_input_boolean - entity: light.example_item
- sensor.example_sensor - entity: cover.example_item
- entity: input_boolean.example_item
title: Example Entities 1
- type: cardEntities - type: cardEntities
heading: Example Page 2 entities:
items: - entity: switch.example_item
- button.example_button - entity: delete
- input_button.example_input_button - entity: cover.example_item
- light.light_example - entity: input_boolean.example_item
- delete # (read this as 'empty') title: Example Entities 2
- type: cardEntities - type: cardEntities
heading: Example Page 3 entities:
items: - entity: binary_sensor.example_item
- scene.example_scene - entity: sensor.example_item
- delete - entity: button.example_item
- delete - entity: number.example_item
- delete title: Example Entities 3
- type: cardEntities
entities:
- entity: scenes.example_item
- entity: script.example_item
- entity: button.example_item
- entity: input_button.example_item
title: Example Entities 4
- type: cardGrid - type: cardGrid
heading: Example Page 4 entities:
items: - entity: light.example_item
- light.light_example - entity: switch.example_item
- button.example_button - entity: delete
- cover.example_cover - entity: button.example_item
- scene.example_scene - entity: cover.example_item
- switch.example_switch - entity: navigate.cardGrid_testKey
- delete title: Exmaple Gird
- type: cardThermo - type: cardThermo
heading: Exmaple Thermostat entity: climate.example_item
item: climate.example_climate
- type: cardMedia - type: cardMedia
item: media_player.spotify_user entity: media_player.example_item
- type: cardAlarm - type: cardAlarm
item: alarm_control_panel.alarmo entity: alarm_control_panel.alarmo
hiddenCards:
- type: cardGrid
title: Exmaple Grid
entities:
- entity: light.kueche_lights
- entity: light.kueche_lights
- entity: light.kueche_lights
key: testKey

View File

@@ -2,97 +2,40 @@ import logging
LOGGER = logging.getLogger(__name__) LOGGER = logging.getLogger(__name__)
class PageNode(object): HA_API = None
def __init__(self, data, parent=None):
self.data = data
self.name = None
self.childs = []
self.parent = parent
self.pos = None
if "items" in data: class Entity(object):
childs = data.pop("items") def __init__(self, entity_input_config):
for page in childs: self.entityId = entity_input_config.get("entity", "unknown")
self.add_child(PageNode(page, self)) self.nameOverride = entity_input_config.get("name")
self.iconOverride = entity_input_config.get("icon")
name = self.data.get("heading", "unkown") if type(self.data) is dict else self.data class Card(object):
ptype = self.data.get("type", "unkown") if type(self.data) is dict else "leaf" def __init__(self, card_input_config, pos=None):
self.pos = pos
self.raw_config = card_input_config
self.cardType = card_input_config.get("type", "unknown")
self.title = card_input_config.get("title", "unknown")
self.key = card_input_config.get("key", "unknown")
# for single entity card like climate or media
self.entity = None
if card_input_config.get("entity") is not None:
self.entity = Entity(card_input_config)
# for pages like grid or entities
self.entities = []
for e in card_input_config.get("entities", []):
self.entities.append(Entity(e))
self.id = f"{self.cardType}_{self.key}".replace(".","_").replace("~","_").replace(" ","_")
LOGGER.info(f"Created Card {self.cardType} with pos {pos} and id {self.id}")
self.name = f"{ptype}.{name}" if type(self.data) is dict else self.data def get_entity_list(self):
self.name = self.name.replace(".","_") entityIds = []
self.name = self.name.replace(",","_") if self.entity is not None:
self.name = self.name.replace(" ","_") entityIds.append(self.entity.entityId)
def add_child(self, obj):
obj.pos = len(self.childs)
self.childs.append(obj)
def next(self):
if self.parent is not None:
pos = self.pos
length = len(self.parent.childs)
return self.parent.childs[(pos+1)%length]
else: else:
return self for e in self.entities:
def prev(self): entityIds.append(e.entityId)
if self.parent is not None: return entityIds
pos = self.pos
length = len(self.parent.childs)
return self.parent.childs[(pos-1)%length]
else:
return self
def search_page_by_name(self, name):
name = name.replace("navigate.", "")
pages = []
for i in self.childs:
# compare name of current page
if i.name == name:
pages.append(i)
# current pages has also childs
if len(i.childs) > 0:
pages.extend(i.search_page_by_name(name))
return pages
return items
def dump(self, indent=0):
"""dump tree to string"""
tab = ' '*(indent-1) + ' |- ' if indent > 0 else ''
name = self.name
parent = self.parent.name if self.parent is not None else "root"
dumpstring = f"{tab}{self.pos}:{name} -> {parent} \n"
for obj in self.childs:
dumpstring += obj.dump(indent + 1)
return dumpstring
def get_items(self):
items = []
for i in self.childs:
if len(i.childs) > 0:
items.append(f"navigate.{i.name}")
else:
items.append(i.data)
return items
def get_all_item_names(self, recursive=True):
items = []
# current page
if type(self.data) is dict:
items.append(self.data.get("item", next(iter(self.data))))
else:
items.append(self.data)
# childs of page
for i in self.childs:
if len(i.childs) > 0:
if recursive:
items.extend(i.get_all_item_names())
else:
if type(i.data) is dict:
items.append(i.data.get("item", next(iter(i.data))))
else:
items.append(i.data)
return items
class LuiBackendConfig(object): class LuiBackendConfig(object):
@@ -101,40 +44,60 @@ class LuiBackendConfig(object):
'panelSendTopic': "cmnd/tasmota_your_mqtt_topic/CustomSend", 'panelSendTopic': "cmnd/tasmota_your_mqtt_topic/CustomSend",
'updateMode': "auto-notify", 'updateMode': "auto-notify",
'model': "eu", 'model': "eu",
'timeoutScreensaver': 20, 'sleepTimeout': 20,
'brightnessScreensaver': 20, 'sleepBrightness': 20,
'brightnessScreensaverTracking': None, 'sleepTracking': None,
'locale': "en_US", 'locale': "en_US",
'timeFormat': "%H:%M", 'timeFormat': "%H:%M",
'dateFormatBabel': "full", 'dateFormatBabel': "full",
'dateFormat': "%A, %d. %B %Y", 'dateFormat': "%A, %d. %B %Y",
'weather': 'weather.example', 'cards': [{
'type': 'cardEntities',
'entities': [{
'entity': 'switch.test_item',
'name': 'Test Item'
}, {
'entity': 'switch.test_item'
}],
'title': 'Example Entities Page'
}, {
'type': 'cardGrid',
'entities': [{
'entity': 'switch.test_item'
}, {
'entity': 'switch.test_item'
}, {
'entity': 'switch.test_item'
}
],
'title': 'Example Grid Page'
}, {
'type': 'climate',
'entity': 'climate.test_item',
}],
'screensaver': {
'type': 'screensaver',
'entity': 'weather.example',
'weatherUnit': 'celsius',
'weatherOverrideForecast1': None, 'weatherOverrideForecast1': None,
'weatherOverrideForecast2': None, 'weatherOverrideForecast2': None,
'weatherOverrideForecast3': None, 'weatherOverrideForecast3': None,
'weatherOverrideForecast4': None, 'weatherOverrideForecast4': None,
'doubleTapToUnlock': False, 'doubleTapToUnlock': False,
'pages': [{ 'alternativeLayout': False
'type': 'cardEntities', },
'heading': 'Test Entities 1', 'hiddenCards': []
'items': ['switch.test_item', 'switch.test_item', 'switch.test_item']
}, {
'type': 'cardGrid',
'heading': 'Test Grid 1',
'items': ['switch.test_item', 'switch.test_item', 'switch.test_item']
}
]
} }
def __init__(self, args=None, check=True): def __init__(self, ha_api, config_in):
global HA_API
HA_API = ha_api
self._config = {} self._config = {}
self._page_config = None self._config_cards = []
self._config_screensaver = None
self._config_hidden_cards = []
if args: self.load(config_in)
self.load(args)
if check:
self.check()
def load(self, args): def load(self, args):
for k, v in args.items(): for k, v in args.items():
@@ -142,20 +105,52 @@ class LuiBackendConfig(object):
self._config[k] = v self._config[k] = v
LOGGER.info(f"Loaded config: {self._config}") LOGGER.info(f"Loaded config: {self._config}")
root_page = {"items": self.get("pages"), "type": "internal", "heading": "root"} # parse cards displayed on panel
self._page_config = PageNode(root_page) pos = 0
for card in self.get("cards"):
self._config_cards.append(Card(card, pos))
pos = pos + 1
# parse screensaver
self._config_screensaver = Card(self.get("screensaver"))
LOGGER.info(f"Parsed Page config to the following Tree: \n {self._page_config.dump()}") # parsed hidden pages that can be accessed through navigate
for card in self.get("hiddenCards"):
def check(self): self._config_hidden_cards.append(Card(card))
return
def get(self, name): def get(self, name):
value = self._config.get(name) path = name.split(".")
if value is None: value = self._config
value = self._DEFAULT_CONFIG.get(name) for p in path:
if value is not None:
value = value.get(p, None)
if value is not None:
return value
# try to get a value from default config
value = self._DEFAULT_CONFIG
for p in path:
if value is not None:
value = value.get(p, None)
return value return value
def get_root_page(self): def get_all_entity_names(self):
return self._page_config entities = []
for card in self._config_cards:
entities.extend(card.get_entity_list())
for card in self._config_hidden_cards:
entities.extend(card.get_entity_list())
return entities
def getCard(self, pos):
card = self._config_cards[pos%len(self._config_cards)]
return card
def searchCard(self, id):
id = id.replace("navigate.", "")
for card in self._config_cards:
if card.id == id:
return card
if self._config_screensaver.id == id:
return self._config_screensaver
for card in self._config_hidden_cards:
if card.id == id:
return card

View File

@@ -13,8 +13,8 @@ class LuiController(object):
self._config = config self._config = config
self._send_mqtt_msg = send_mqtt_msg self._send_mqtt_msg = send_mqtt_msg
# first child of root page (default, after startup) # first card (default, after startup)
self._current_page = self._config._page_config.childs[0] self._current_card = self._config.getCard(0)
self._pages_gen = LuiPagesGen(ha_api, config, send_mqtt_msg) self._pages_gen = LuiPagesGen(ha_api, config, send_mqtt_msg)
@@ -25,6 +25,9 @@ class LuiController(object):
time = datetime.time(0, 0, 0) time = datetime.time(0, 0, 0)
ha_api.run_minutely(self._pages_gen.update_time, time) ha_api.run_minutely(self._pages_gen.update_time, time)
# Setup date callback
ha_api.run_daily(self._pages_gen.update_date, time)
# weather callback # weather callback
weather_interval = 15 * 60 # 15 minutes weather_interval = 15 * 60 # 15 minutes
ha_api.run_every(self.weather_update, "now", weather_interval) ha_api.run_every(self.weather_update, "now", weather_interval)
@@ -33,15 +36,14 @@ class LuiController(object):
self.register_callbacks() self.register_callbacks()
# register callbacks for each time # register callbacks for each time
if type(self._config.get("brightnessScreensaver")) == list: if type(self._config.get("sleepBrightness")) == list:
for index, timeset in enumerate(self._config.get("brightnessScreensaver")): for index, timeset in enumerate(self._config.get("sleepBrightness")):
self._ha_api.run_daily(self.update_screensaver_brightness, timeset["time"], value=timeset["value"]) self._ha_api.run_daily(self.update_screensaver_brightness, timeset["time"], value=timeset["value"])
# calculate current brightness # calculate current brightness
self.current_screensaver_brightness = self.calc_current_screensaver_brightness() self.current_screensaver_brightness = self.calc_current_screensaver_brightness()
# call update_screensaver_brightness on changes of entity configured in brightnessScreensaverTracking # call update_screensaver_brightness on changes of entity configured in brightnessScreensaverTracking
bst = self._config.get("brightnessScreensaverTracking") bst = self._config.get("sleepTracking")
if bst is not None and self._ha_api.entity_exists(bst): if bst is not None and self._ha_api.entity_exists(bst):
self._ha_api.listen_state(self.update_screensaver_brightness_state_callback, entity_id=bst) self._ha_api.listen_state(self.update_screensaver_brightness_state_callback, entity_id=bst)
@@ -52,8 +54,8 @@ class LuiController(object):
self._pages_gen.update_date("") self._pages_gen.update_date("")
# set screensaver timeout # set screensaver timeout
timeout = self._config.get("timeoutScreensaver") timeout = self._config.get("sleepTimeout")
self._send_mqtt_msg(f"timeout,{timeout}") self._send_mqtt_msg(f"timeout~{timeout}")
# set current screensaver brightness # set current screensaver brightness
self.update_screensaver_brightness(kwargs={"value": self.current_screensaver_brightness}) self.update_screensaver_brightness(kwargs={"value": self.current_screensaver_brightness})
@@ -66,22 +68,25 @@ class LuiController(object):
self.update_screensaver_brightness(kwargs={"value": self.current_screensaver_brightness}) self.update_screensaver_brightness(kwargs={"value": self.current_screensaver_brightness})
def update_screensaver_brightness(self, kwargs): def update_screensaver_brightness(self, kwargs):
bst = self._config.get("brightnessScreensaverTracking") bst = self._config.get("sleepTracking")
brightness = 0 brightness = 0
if bst is not None and self._ha_api.entity_exists(bst) and self._ha_api.get_entity(bst).state == "not_home": if bst is not None and self._ha_api.entity_exists(bst) and self._ha_api.get_entity(bst).state == "not_home":
brightness = 0 brightness = 0
else: else:
self.current_screensaver_brightness = kwargs['value'] self.current_screensaver_brightness = kwargs['value']
brightness = kwargs['value'] brightness = kwargs['value']
self._send_mqtt_msg(f"dimmode,{brightness}") self._send_mqtt_msg(f"dimmode~{brightness}")
def weather_update(self, kwargs):
self._pages_gen.update_screensaver_weather()
def calc_current_screensaver_brightness(self): def calc_current_screensaver_brightness(self):
current_screensaver_brightness = 20 current_screensaver_brightness = 20
# set brightness of screensaver # set brightness of screensaver
if type(self._config.get("brightnessScreensaver")) == int: if type(self._config.get("sleepBrightness")) == int:
current_screensaver_brightness = self._config.get("brightnessScreensaver") current_screensaver_brightness = self._config.get("sleepBrightness")
elif type(self._config.get("brightnessScreensaver")) == list: elif type(self._config.get("sleepBrightness")) == list:
sorted_timesets = sorted(self._config.get("brightnessScreensaver"), key=lambda d: self._ha_api.parse_time(d['time'])) sorted_timesets = sorted(self._config.get("sleepBrightness"), key=lambda d: self._ha_api.parse_time(d['time']))
# calc current screensaver brightness # calc current screensaver brightness
found_current_dim_value = False found_current_dim_value = False
for index, timeset in enumerate(sorted_timesets): for index, timeset in enumerate(sorted_timesets):
@@ -96,13 +101,8 @@ class LuiController(object):
current_screensaver_brightness = sorted_timesets[-1]["value"] current_screensaver_brightness = sorted_timesets[-1]["value"]
return current_screensaver_brightness return current_screensaver_brightness
def weather_update(self, kwargs):
we_name = self._config.get("weather")
unit = "°C"
self._pages_gen.update_screensaver_weather(kwargs={"weather": we_name, "unit": unit})
def register_callbacks(self): def register_callbacks(self):
items = self._config.get_root_page().get_all_item_names() items = self._config.get_all_entity_names()
LOGGER.debug(f"Registering callbacks for the following items: {items}") LOGGER.debug(f"Registering callbacks for the following items: {items}")
for item in items: for item in items:
if self._ha_api.entity_exists(item): if self._ha_api.entity_exists(item):
@@ -110,12 +110,12 @@ class LuiController(object):
def state_change_callback(self, entity, attribute, old, new, kwargs): def state_change_callback(self, entity, attribute, old, new, kwargs):
LOGGER.debug(f"Got callback for: {entity}") LOGGER.debug(f"Got callback for: {entity}")
LOGGER.debug(f"Current page has the following items: {self._current_page.get_items()}") LOGGER.debug(f"Current page has the following items: {self._current_card.get_entity_list()}")
if entity in self._current_page.get_all_item_names(recursive=False): if entity in self._current_card.get_entity_list():
LOGGER.debug(f"Callback Entity is on current page: {entity}") LOGGER.debug(f"Callback Entity is on current page: {entity}")
self._pages_gen.render_page(self._current_page, send_page_type=False) self._pages_gen.render_card(self._current_card, send_page_type=False)
# send detail page update, just in case # send detail page update, just in case
if self._current_page.data.get("type", "unknown") in ["cardGrid", "cardEntities"]: if self._current_card.cardType in ["cardGrid", "cardEntities"]:
if entity.startswith("light"): if entity.startswith("light"):
self._pages_gen.generate_light_detail_page(entity) self._pages_gen.generate_light_detail_page(entity)
if entity.startswith("cover"): if entity.startswith("cover"):
@@ -133,22 +133,32 @@ class LuiController(object):
# internal buttons # internal buttons
if entity_id == "screensaver" and button_type == "bExit": if entity_id == "screensaver" and button_type == "bExit":
if self._config.get("doubleTapToUnlock") and int(value) >= 2: if self._config.get("doubleTapToUnlock") and int(value) >= 2:
self._pages_gen.render_page(self._current_page) self._pages_gen.render_card(self._current_card)
elif not self._config.get("doubleTapToUnlock"): elif not self._config.get("doubleTapToUnlock"):
self._pages_gen.render_page(self._current_page) self._pages_gen.render_card(self._current_card)
return return
if button_type == "sleepReached":
self._pages_gen.generate_screensaver_page()
return
if button_type == "bExit": if button_type == "bExit":
self._pages_gen.render_page(self._current_page) self._pages_gen.render_card(self._current_card)
if button_type == "bUp":
self._current_card = self._previous_card
self._pages_gen.render_card(self._previous_card)
if button_type == "bNext": if button_type == "bNext":
self._current_page = self._current_page.next() card = self._config.getCard(self._current_card.pos+1)
self._pages_gen.render_page(self._current_page) self._current_card = card
self._pages_gen.render_card(card)
if button_type == "bPrev": if button_type == "bPrev":
self._current_page = self._current_page.prev() card = self._config.getCard(self._current_card.pos-1)
self._pages_gen.render_page(self._current_page) self._current_card = card
self._pages_gen.render_card(card)
elif entity_id == "updateDisplayNoYes" and value == "no": elif entity_id == "updateDisplayNoYes" and value == "no":
self._pages_gen.render_page(self._current_page) self._pages_gen.render_card(self._current_card)
# buttons with actions on HA # buttons with actions on HA
if button_type == "OnOff": if button_type == "OnOff":
@@ -174,8 +184,9 @@ class LuiController(object):
if button_type == "button": if button_type == "button":
if entity_id.startswith('navigate'): if entity_id.startswith('navigate'):
# internal for navigation to nested pages # internal for navigation to nested pages
self._current_page = self._config.get_root_page().search_page_by_name(entity_id)[0] self._previous_card = self._current_card
self._pages_gen.render_page(self._current_page) self._current_card = self._config.searchCard(entity_id)
self._pages_gen.render_card(self._current_card)
elif entity_id.startswith('scene'): elif entity_id.startswith('scene'):
self._ha_api.get_entity(entity_id).call_service("turn_on") self._ha_api.get_entity(entity_id).call_service("turn_on")
elif entity_id.startswith('script'): elif entity_id.startswith('script'):

View File

@@ -43,6 +43,13 @@ def rgb_dec565(rgb_color):
# and shift them to make them a 16 bit dec value in 565 format. # and shift them to make them a 16 bit dec value in 565 format.
return ((int(red / 255 * 31) << 11) | (int(green / 255 * 63) << 5) | (int(blue / 255 * 31))) return ((int(red / 255 * 31) << 11) | (int(green / 255 * 63) << 5) | (int(blue / 255 * 31)))
def convert_temperature(temp, unit):
if unit == "fahrenheit":
#temp = round(((c * 1.8) + 32), 1)
return f"{temp}°F"
else:
return f"{temp}°C"
def get_attr_safe(entity, attr, default): def get_attr_safe(entity, attr, default):
res = entity.attributes.get(attr, default) res = entity.attributes.get(attr, default)
if res is None: if res is None:

View File

@@ -45,6 +45,14 @@ icons = {
'bell-ring': 43, 'bell-ring': 43,
'ray-vertex': 44, 'ray-vertex': 44,
'script-text': 45, 'script-text': 45,
'home-import-outline': 46,
'home-export-outline': 47,
'arrow-up-bold': 48,
'arrow-down-bold': 49,
'cast-audio': 50,
'cast': 51,
'radio': 52,
'fireplace': 53,
} }
def get_icon_id(ma_name): def get_icon_id(ma_name):

View File

@@ -41,8 +41,9 @@ class LuiMqttListener(object):
# send messages for current page # send messages for current page
if not msg_send: if not msg_send:
self._controller.startup() self._controller.startup()
if msg[1] == "screensaverOpen": if msg[1] == "sleepReached":
self._controller.weather_update("") entity_id = msg[2]
self._controller.button_press(entity_id, "sleepReached", None)
# try to request tasmota driver version again in case it's still None # try to request tasmota driver version again in case it's still None
if self._updater.current_tasmota_driver_version is None: if self._updater.current_tasmota_driver_version is None:
self._updater.request_berry_driver_version() self._updater.request_berry_driver_version()

Some files were not shown because too many files have changed in this diff Show More