Compare commits

..

17 Commits

Author SHA1 Message Date
Johannes
320090ea51 Update nspanel-lovelace-ui.py 2023-01-30 20:35:38 +01:00
Johannes
3b7771103b Update pages.py 2023-01-30 20:17:43 +01:00
Johannes
e2d567b41f Update entities.md 2023-01-30 17:49:04 +01:00
Johannes
4a0348372e Update entities.md 2023-01-30 17:48:47 +01:00
Johannes
ba83483f91 Update icon_mapping.py 2023-01-30 17:43:27 +01:00
joBr99
0d7b2bb193 fix #727 (add nextion2text) 2023-01-30 16:39:37 +00:00
Johannes Braun
e71ef831f2 fix #727 2023-01-30 17:35:33 +01:00
Johannes
71b2b97699 add doc for #723 2023-01-30 17:26:08 +01:00
Johannes
9a3cc08db8 Update pages.py 2023-01-30 17:18:20 +01:00
Armilar
9f53350dd9 v3.9.0 - Merge pull request #724 from ravenst0ne/main
Catch exception for missing sensor values separately
2023-01-30 14:41:09 +01:00
Alex
271ebc0783 Catch exception for missing sensor values separately 2023-01-30 14:37:33 +01:00
Armilar
e597016c0d Release 3.9.0 - Breaking Changes
- Fix bExit if externel bExit page is set in DP
- Add Values, Decimal Places to mrIcons
- Preparation of the cardPower for TFT 3.9.0 --> New Payload
- Preparation of the cardAlarm for TFT 3.9.0 --> New Payload and Add heading
- Add configurable navigation buttons for top level pages and icon colors by @ravenst0ne (v3.8.3.1)
- Add new ServicePages, Reboot and Update DP's inlc. Auto-Alias
- Add Indicator Color Scales to Info Aliases
 - Move TS-Config-Parameters to 0_userdata NSPanel-Config
 - Refactoring Screensaver (HMI)
 - New Function "Check Config Parameters"
 - Fix Tasmota- Firmware-Upgrade with Safeboot
 - Add getState in PageItem.name with prefix and suffix
 - Fix TFT-Version Path in function update_tft_firmware (drop ".")
 - Upgrade TFT 49 / 3.9.0
2023-01-30 11:58:39 +01:00
Armilar
6fd6811031 Release 3.9.0 - Breaking Changes
- Fix bExit if externel bExit page is set in DP
- Add Values, Decimal Places to mrIcons
- Preparation of the cardPower for TFT 3.9.0 --> New Payload
- Preparation of the cardAlarm for TFT 3.9.0 --> New Payload and Add heading
- Add configurable navigation buttons for top level pages and icon colors by @ravenst0ne (v3.8.3.1)
- Add new ServicePages, Reboot and Update DP's inlc. Auto-Alias
- Add Indicator Color Scales to Info Aliases
 - Move TS-Config-Parameters to 0_userdata NSPanel-Config
 - Refactoring Screensaver (HMI)
 - New Function "Check Config Parameters"
 - Fix Tasmota- Firmware-Upgrade with Safeboot
 - Add getState in PageItem.name with prefix and suffix
 - Fix TFT-Version Path in function update_tft_firmware (drop ".")
 - Upgrade TFT 49 / 3.9.0
2023-01-30 11:47:50 +01:00
Johannes Braun
f59daec50e implement value override on cardpower 2023-01-29 23:14:20 +01:00
Johannes
735d017353 Update nspanel-lovelace-ui.py 2023-01-29 22:20:50 +01:00
Johannes Braun
e96b45e2ba fix theme 2023-01-29 22:20:03 +01:00
Johannes Braun
8d2e19aafb fix theme 2023-01-29 21:56:58 +01:00
30 changed files with 3593 additions and 1964 deletions

View File

@@ -348,7 +348,7 @@ Example alternative layout: `weatherUpdate~~~A~21130~~-0.7C~~~B~63469~Sat~3.6C~~
</tbody> </tbody>
</table> </table>
`color~background~tTime~timeAMPM~tDate~tMainText~tForecast1~tForecast2~tForecast3~tForecast4~tForecast1Val~tForecast2Val~tForecast3Val~tForecast4Val~bar~tMainTextAlt2~tMR~tTimeAdd` `color~background~tTime~timeAMPM~tDate~tMainText~tForecast1~tForecast2~tForecast3~tForecast4~tForecast1Val~tForecast2Val~tForecast3Val~tForecast4Val~bar~tMainTextAlt2~tTimeAdd`
<table> <table>
<thead> <thead>
@@ -493,14 +493,6 @@ Example alternative layout: `weatherUpdate~~~A~21130~~-0.7C~~~B~63469~Sat~3.6C~~
<td></td> <td></td>
<td></td> <td></td>
<td></td> <td></td>
<td>tMR</td>
<td></td>
</tr>
<tr>
<td>17</td>
<td></td>
<td></td>
<td></td>
<td>tTimeAdd</td> <td>tTimeAdd</td>
<td></td> <td></td>
</tr> </tr>

View File

@@ -1,5 +1,93 @@
--- HMI/n2t-out --- HMI/n2t-out
+++ HMI/US/landscape/n2t-out +++ HMI/US/landscape/n2t-out
│ --- HMI/n2t-out/cardPower.txt
├── +++ HMI/US/landscape/n2t-out/cardPower.txt
│ @@ -475,85 +475,79 @@
│ h0.val=h0.minval
│ }
│ if(sys0<h0.minval)
│ {
│ h0.val=h0.maxval
│ }
│ h0.val+=t0Speed.val
│ - ref t0u
│ }
│ if(t1Speed.val!=0)
│ {
│ sys0=h1.val+t1Speed.val
│ if(sys0>h1.maxval)
│ {
│ h1.val=h1.minval
│ }
│ if(sys0<h1.minval)
│ {
│ h1.val=h1.maxval
│ }
│ h1.val+=t1Speed.val
│ - ref t1u
│ }
│ if(t2Speed.val!=0)
│ {
│ sys0=h2.val+t2Speed.val
│ if(sys0>h2.maxval)
│ {
│ h2.val=h2.minval
│ }
│ if(sys0<h2.minval)
│ {
│ h2.val=h2.maxval
│ }
│ h2.val+=t2Speed.val
│ - ref t2u
│ }
│ if(t3Speed.val!=0)
│ {
│ sys0=h3.val+t3Speed.val
│ if(sys0>h3.maxval)
│ {
│ h3.val=h3.minval
│ }
│ if(sys0<h3.minval)
│ {
│ h3.val=h3.maxval
│ }
│ h3.val+=t3Speed.val
│ - ref t3u
│ }
│ if(t4Speed.val!=0)
│ {
│ sys0=h4.val+t4Speed.val
│ if(sys0>h4.maxval)
│ {
│ h4.val=h4.minval
│ }
│ if(sys0<h4.minval)
│ {
│ h4.val=h4.maxval
│ }
│ h4.val+=t4Speed.val
│ - ref t4u
│ }
│ if(t5Speed.val!=0)
│ {
│ sys0=h5.val+t5Speed.val
│ if(sys0>h5.maxval)
│ {
│ h5.val=h5.minval
│ }
│ if(sys0<h5.minval)
│ {
│ h5.val=h5.maxval
│ }
│ h5.val+=t5Speed.val
│ - ref t5u
│ }
│ Timer tmSerial
│ Attributes
│ Scope : local
│ Period (ms): 50
│ Enabled : yes
│ --- HMI/n2t-out/pageStartup.txt │ --- HMI/n2t-out/pageStartup.txt
├── +++ HMI/US/landscape/n2t-out/pageStartup.txt ├── +++ HMI/US/landscape/n2t-out/pageStartup.txt
│ @@ -179,15 +179,15 @@ │ @@ -179,15 +179,15 @@
@@ -36,7 +124,7 @@
│ Attributes │ Attributes
│ Scope : local │ Scope : local
│ Text : │ Text :
│ Max. Text Size: 400 │ Max. Text Size: 600
│ Variable (string) strTmp │ Variable (string) strTmp
│ @@ -103,35 +100,14 @@ │ @@ -103,35 +100,14 @@

View File

@@ -46,6 +46,10 @@ pageStartup
20 Component(s) 20 Component(s)
185 Line(s) of event code 185 Line(s) of event code
131 Unique line(s) of event code 131 Unique line(s) of event code
screensaver
46 Component(s)
418 Line(s) of event code
298 Unique line(s) of event code
cardGrid cardGrid
44 Component(s) 44 Component(s)
515 Line(s) of event code 515 Line(s) of event code
@@ -78,10 +82,6 @@ cardPower
48 Component(s) 48 Component(s)
487 Line(s) of event code 487 Line(s) of event code
326 Unique line(s) of event code 326 Unique line(s) of event code
screensaver
46 Component(s)
418 Line(s) of event code
299 Unique line(s) of event code
Total Total
20 Page(s) 20 Page(s)

View File

@@ -46,7 +46,7 @@ Variable (string) strCommand
ID : 4 ID : 4
Scope : local Scope : local
Text : Text :
Max. Text Size: 400 Max. Text Size: 600
Variable (string) strTmp Variable (string) strTmp
Attributes Attributes
@@ -1238,9 +1238,7 @@ Timer tmSerial
covx tTmp.txt,t10.bco,0,0 covx tTmp.txt,t10.bco,0,0
spstr strCommand.txt,tTmp.txt,"~",15 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,tMainTextAlt2.pco,0,0 covx tTmp.txt,tMainTextAlt2.pco,0,0
//spstr strCommand.txt,tTmp.txt,"~",16 spstr strCommand.txt,tTmp.txt,"~",16
//covx tTmp.txt,tMR.pco,0,0
spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,tTimeAdd.pco,0,0 covx tTmp.txt,tTimeAdd.pco,0,0
if(tMainTextAlt2.txt!=""&&p0.w!=320) if(tMainTextAlt2.txt!=""&&p0.w!=320)
{ {

View File

@@ -37,7 +37,7 @@ Variable (string) strCommand
Attributes Attributes
Scope : local Scope : local
Text : Text :
Max. Text Size: 400 Max. Text Size: 600
Variable (string) strTmp Variable (string) strTmp
Attributes Attributes
@@ -665,9 +665,7 @@ Timer tmSerial
covx tTmp.txt,t10.bco,0,0 covx tTmp.txt,t10.bco,0,0
spstr strCommand.txt,tTmp.txt,"~",15 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,tMainTextAlt2.pco,0,0 covx tTmp.txt,tMainTextAlt2.pco,0,0
//spstr strCommand.txt,tTmp.txt,"~",16 spstr strCommand.txt,tTmp.txt,"~",16
//covx tTmp.txt,tMR.pco,0,0
spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,tTimeAdd.pco,0,0 covx tTmp.txt,tTimeAdd.pco,0,0
if(tMainTextAlt2.txt!=""&&p0.w!=320) if(tMainTextAlt2.txt!=""&&p0.w!=320)
{ {

Binary file not shown.

Binary file not shown.

View File

@@ -1047,6 +1047,94 @@
│ //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
│ --- HMI/n2t-out/cardPower.txt
├── +++ HMI/US/portrait/n2t-out/cardPower.txt
│ @@ -475,85 +475,79 @@
│ h0.val=h0.minval
│ }
│ if(sys0<h0.minval)
│ {
│ h0.val=h0.maxval
│ }
│ h0.val+=t0Speed.val
│ - ref t0u
│ }
│ if(t1Speed.val!=0)
│ {
│ sys0=h1.val+t1Speed.val
│ if(sys0>h1.maxval)
│ {
│ h1.val=h1.minval
│ }
│ if(sys0<h1.minval)
│ {
│ h1.val=h1.maxval
│ }
│ h1.val+=t1Speed.val
│ - ref t1u
│ }
│ if(t2Speed.val!=0)
│ {
│ sys0=h2.val+t2Speed.val
│ if(sys0>h2.maxval)
│ {
│ h2.val=h2.minval
│ }
│ if(sys0<h2.minval)
│ {
│ h2.val=h2.maxval
│ }
│ h2.val+=t2Speed.val
│ - ref t2u
│ }
│ if(t3Speed.val!=0)
│ {
│ sys0=h3.val+t3Speed.val
│ if(sys0>h3.maxval)
│ {
│ h3.val=h3.minval
│ }
│ if(sys0<h3.minval)
│ {
│ h3.val=h3.maxval
│ }
│ h3.val+=t3Speed.val
│ - ref t3u
│ }
│ if(t4Speed.val!=0)
│ {
│ sys0=h4.val+t4Speed.val
│ if(sys0>h4.maxval)
│ {
│ h4.val=h4.minval
│ }
│ if(sys0<h4.minval)
│ {
│ h4.val=h4.maxval
│ }
│ h4.val+=t4Speed.val
│ - ref t4u
│ }
│ if(t5Speed.val!=0)
│ {
│ sys0=h5.val+t5Speed.val
│ if(sys0>h5.maxval)
│ {
│ h5.val=h5.minval
│ }
│ if(sys0<h5.minval)
│ {
│ h5.val=h5.maxval
│ }
│ h5.val+=t5Speed.val
│ - ref t5u
│ }
│ Timer tmSerial
│ Attributes
│ Scope : local
│ Period (ms): 50
│ Enabled : yes
│ --- HMI/n2t-out/pageStartup.txt │ --- HMI/n2t-out/pageStartup.txt
├── +++ HMI/US/portrait/n2t-out/pageStartup.txt ├── +++ HMI/US/portrait/n2t-out/pageStartup.txt
│ @@ -35,20 +35,14 @@ │ @@ -35,20 +35,14 @@
@@ -1121,7 +1209,7 @@
│ Attributes │ Attributes
│ Scope : local │ Scope : local
│ Text : │ Text :
│ Max. Text Size: 400 │ Max. Text Size: 600
│ Variable (string) strTmp │ Variable (string) strTmp
│ @@ -103,35 +100,14 @@ │ @@ -103,35 +100,14 @@

View File

@@ -1,4 +1,4 @@
+++ /dev/fd/62 2023-01-25 19:09:43.447986033 +0000 +++ /dev/fd/62 2023-01-30 16:39:29.795510871 +0000
+I/n2t-out/Program.s.txt +I/n2t-out/Program.s.txt
++ HMI/US/portrait/n2t-out/Program.s.txt ++ HMI/US/portrait/n2t-out/Program.s.txt
+I/n2t-out/cardEntities.txt +I/n2t-out/cardEntities.txt
@@ -54,13 +54,13 @@
+ributes +ributes
+ Scope : local + Scope : local
+ Text : + Text :
+ Max. Text Size: 80
+ Max. Text Size: 40 + Max. Text Size: 40
+ +
+e (string) nent2 +e (string) nent2
+ributes +ributes
+ Scope : local + Scope : local
+ Text : + Text :
+ Max. Text Size: 80
+ Max. Text Size: 40 + Max. Text Size: 40
+14 +186,26 @@ +14 +186,26 @@
+e (string) type6 +e (string) type6
@@ -466,6 +466,94 @@
+ covx tTmp.txt,sys0,0,0 + covx tTmp.txt,sys0,0,0
+ hSlider6.maxval=sys0 + hSlider6.maxval=sys0
+ } + }
+I/n2t-out/cardPower.txt
++ HMI/US/portrait/n2t-out/cardPower.txt
+85 +475,79 @@
+ h0.val=h0.minval
+ }
+ if(sys0<h0.minval)
+ {
+ h0.val=h0.maxval
+ }
+ h0.val+=t0Speed.val
+ ref t0u
+ }
+ if(t1Speed.val!=0)
+ {
+ sys0=h1.val+t1Speed.val
+ if(sys0>h1.maxval)
+ {
+ h1.val=h1.minval
+ }
+ if(sys0<h1.minval)
+ {
+ h1.val=h1.maxval
+ }
+ h1.val+=t1Speed.val
+ ref t1u
+ }
+ if(t2Speed.val!=0)
+ {
+ sys0=h2.val+t2Speed.val
+ if(sys0>h2.maxval)
+ {
+ h2.val=h2.minval
+ }
+ if(sys0<h2.minval)
+ {
+ h2.val=h2.maxval
+ }
+ h2.val+=t2Speed.val
+ ref t2u
+ }
+ if(t3Speed.val!=0)
+ {
+ sys0=h3.val+t3Speed.val
+ if(sys0>h3.maxval)
+ {
+ h3.val=h3.minval
+ }
+ if(sys0<h3.minval)
+ {
+ h3.val=h3.maxval
+ }
+ h3.val+=t3Speed.val
+ ref t3u
+ }
+ if(t4Speed.val!=0)
+ {
+ sys0=h4.val+t4Speed.val
+ if(sys0>h4.maxval)
+ {
+ h4.val=h4.minval
+ }
+ if(sys0<h4.minval)
+ {
+ h4.val=h4.maxval
+ }
+ h4.val+=t4Speed.val
+ ref t4u
+ }
+ if(t5Speed.val!=0)
+ {
+ sys0=h5.val+t5Speed.val
+ if(sys0>h5.maxval)
+ {
+ h5.val=h5.minval
+ }
+ if(sys0<h5.minval)
+ {
+ h5.val=h5.maxval
+ }
+ h5.val+=t5Speed.val
+ ref t5u
+ }
+
+mSerial
+ributes
+ Scope : local
+ Period (ms): 50
+ Enabled : yes
+I/n2t-out/pageStartup.txt +I/n2t-out/pageStartup.txt
++ HMI/US/portrait/n2t-out/pageStartup.txt ++ HMI/US/portrait/n2t-out/pageStartup.txt
+0 +35,14 @@ +0 +35,14 @@
@@ -506,7 +594,7 @@
+ributes +ributes
+ Scope : local + Scope : local
+ Text : + Text :
+ Max. Text Size: 400 + Max. Text Size: 600
+ +
+e (string) strTmp +e (string) strTmp
+35 +100,14 @@ +35 +100,14 @@

View File

@@ -61,7 +61,7 @@ cardChart
screensaver screensaver
46 Component(s) 46 Component(s)
418 Line(s) of event code 418 Line(s) of event code
299 Unique line(s) of event code 298 Unique line(s) of event code
popupTimer popupTimer
42 Component(s) 42 Component(s)
512 Line(s) of event code 512 Line(s) of event code

View File

@@ -46,7 +46,7 @@ Variable (string) strCommand
ID : 4 ID : 4
Scope : local Scope : local
Text : Text :
Max. Text Size: 400 Max. Text Size: 600
Variable (string) strTmp Variable (string) strTmp
Attributes Attributes
@@ -1238,9 +1238,7 @@ Timer tmSerial
covx tTmp.txt,t10.bco,0,0 covx tTmp.txt,t10.bco,0,0
spstr strCommand.txt,tTmp.txt,"~",15 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,tMainTextAlt2.pco,0,0 covx tTmp.txt,tMainTextAlt2.pco,0,0
//spstr strCommand.txt,tTmp.txt,"~",16 spstr strCommand.txt,tTmp.txt,"~",16
//covx tTmp.txt,tMR.pco,0,0
spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,tTimeAdd.pco,0,0 covx tTmp.txt,tTimeAdd.pco,0,0
if(tMainTextAlt2.txt!=""&&p0.w!=320) if(tMainTextAlt2.txt!=""&&p0.w!=320)
{ {

View File

@@ -37,7 +37,7 @@ Variable (string) strCommand
Attributes Attributes
Scope : local Scope : local
Text : Text :
Max. Text Size: 400 Max. Text Size: 600
Variable (string) strTmp Variable (string) strTmp
Attributes Attributes
@@ -665,9 +665,7 @@ Timer tmSerial
covx tTmp.txt,t10.bco,0,0 covx tTmp.txt,t10.bco,0,0
spstr strCommand.txt,tTmp.txt,"~",15 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,tMainTextAlt2.pco,0,0 covx tTmp.txt,tMainTextAlt2.pco,0,0
//spstr strCommand.txt,tTmp.txt,"~",16 spstr strCommand.txt,tTmp.txt,"~",16
//covx tTmp.txt,tMR.pco,0,0
spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,tTimeAdd.pco,0,0 covx tTmp.txt,tTimeAdd.pco,0,0
if(tMainTextAlt2.txt!=""&&p0.w!=320) if(tMainTextAlt2.txt!=""&&p0.w!=320)
{ {

Binary file not shown.

Binary file not shown.

View File

@@ -191,7 +191,7 @@ Text t0u
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 82 x coordinate : 82
y coordinate : 132 y coordinate : 119
Width : 108 Width : 108
Height : 30 Height : 30
Effect : load Effect : load
@@ -285,7 +285,7 @@ Text t1u
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 82 x coordinate : 82
y coordinate : 209 y coordinate : 195
Width : 108 Width : 108
Height : 30 Height : 30
Effect : load Effect : load
@@ -347,7 +347,7 @@ Text t2u
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 82 x coordinate : 82
y coordinate : 285 y coordinate : 272
Width : 108 Width : 108
Height : 30 Height : 30
Effect : load Effect : load
@@ -409,7 +409,7 @@ Text t3u
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 262 x coordinate : 262
y coordinate : 132 y coordinate : 119
Width : 108 Width : 108
Height : 30 Height : 30
Effect : load Effect : load
@@ -471,7 +471,7 @@ Text t4u
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 262 x coordinate : 262
y coordinate : 209 y coordinate : 195
Width : 108 Width : 108
Height : 30 Height : 30
Effect : load Effect : load
@@ -533,7 +533,7 @@ Text t5u
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 262 x coordinate : 262
y coordinate : 285 y coordinate : 272
Width : 108 Width : 108
Height : 30 Height : 30
Effect : load Effect : load
@@ -755,7 +755,7 @@ Slider h1
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 78 x coordinate : 78
y coordinate : 165 y coordinate : 164
Width : 120 Width : 120
Height : 44 Height : 44
Effect : load Effect : load
@@ -830,7 +830,7 @@ Slider h4
Send Component ID : disabled Send Component ID : disabled
Opacity : 127 Opacity : 127
x coordinate : 258 x coordinate : 258
y coordinate : 165 y coordinate : 164
Width : 120 Width : 120
Height : 44 Height : 44
Effect : load Effect : load
@@ -1046,6 +1046,7 @@ Timer tm0
h0.val=h0.maxval h0.val=h0.maxval
} }
h0.val+=t0Speed.val h0.val+=t0Speed.val
ref t0u
} }
if(t1Speed.val!=0) if(t1Speed.val!=0)
{ {
@@ -1059,6 +1060,7 @@ Timer tm0
h1.val=h1.maxval h1.val=h1.maxval
} }
h1.val+=t1Speed.val h1.val+=t1Speed.val
ref t1u
} }
if(t2Speed.val!=0) if(t2Speed.val!=0)
{ {
@@ -1072,6 +1074,7 @@ Timer tm0
h2.val=h2.maxval h2.val=h2.maxval
} }
h2.val+=t2Speed.val h2.val+=t2Speed.val
ref t2u
} }
if(t3Speed.val!=0) if(t3Speed.val!=0)
{ {
@@ -1085,6 +1088,7 @@ Timer tm0
h3.val=h3.maxval h3.val=h3.maxval
} }
h3.val+=t3Speed.val h3.val+=t3Speed.val
ref t3u
} }
if(t4Speed.val!=0) if(t4Speed.val!=0)
{ {
@@ -1098,6 +1102,7 @@ Timer tm0
h4.val=h4.maxval h4.val=h4.maxval
} }
h4.val+=t4Speed.val h4.val+=t4Speed.val
ref t4u
} }
if(t5Speed.val!=0) if(t5Speed.val!=0)
{ {
@@ -1111,6 +1116,7 @@ Timer tm0
h5.val=h5.maxval h5.val=h5.maxval
} }
h5.val+=t5Speed.val h5.val+=t5Speed.val
ref t5u
} }
Timer tmSerial Timer tmSerial

View File

@@ -30,10 +30,10 @@ pageTest
26 Component(s) 26 Component(s)
68 Line(s) of event code 68 Line(s) of event code
66 Unique line(s) of event code 66 Unique line(s) of event code
cardPower screensaver
48 Component(s) 47 Component(s)
487 Line(s) of event code 428 Line(s) of event code
326 Unique line(s) of event code 306 Unique line(s) of event code
popupFan popupFan
27 Component(s) 27 Component(s)
351 Line(s) of event code 351 Line(s) of event code
@@ -62,10 +62,10 @@ cardMedia
59 Component(s) 59 Component(s)
641 Line(s) of event code 641 Line(s) of event code
318 Unique line(s) of event code 318 Unique line(s) of event code
screensaver cardPower
47 Component(s) 48 Component(s)
428 Line(s) of event code 493 Line(s) of event code
307 Unique line(s) of event code 332 Unique line(s) of event code
popupTimer popupTimer
42 Component(s) 42 Component(s)
512 Line(s) of event code 512 Line(s) of event code
@@ -86,5 +86,5 @@ cardEntities
Total Total
20 Page(s) 20 Page(s)
737 Component(s) 737 Component(s)
8810 Line(s) of event code 8816 Line(s) of event code
2264 Unique line(s) of event code 2270 Unique line(s) of event code

View File

@@ -49,7 +49,7 @@ Variable (string) strCommand
ID : 4 ID : 4
Scope : local Scope : local
Text : Text :
Max. Text Size: 400 Max. Text Size: 600
Variable (string) strTmp Variable (string) strTmp
Attributes Attributes
@@ -1282,9 +1282,7 @@ Timer tmSerial
covx tTmp.txt,t10.bco,0,0 covx tTmp.txt,t10.bco,0,0
spstr strCommand.txt,tTmp.txt,"~",15 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,tMainTextAlt2.pco,0,0 covx tTmp.txt,tMainTextAlt2.pco,0,0
//spstr strCommand.txt,tTmp.txt,"~",16 spstr strCommand.txt,tTmp.txt,"~",16
//covx tTmp.txt,tMR.pco,0,0
spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,tTimeAdd.pco,0,0 covx tTmp.txt,tTimeAdd.pco,0,0
if(tMainTextAlt2.txt!=""&&p0.w!=320) if(tMainTextAlt2.txt!=""&&p0.w!=320)
{ {

View File

@@ -479,6 +479,7 @@ Timer tm0
h0.val=h0.maxval h0.val=h0.maxval
} }
h0.val+=t0Speed.val h0.val+=t0Speed.val
ref t0u
} }
if(t1Speed.val!=0) if(t1Speed.val!=0)
{ {
@@ -492,6 +493,7 @@ Timer tm0
h1.val=h1.maxval h1.val=h1.maxval
} }
h1.val+=t1Speed.val h1.val+=t1Speed.val
ref t1u
} }
if(t2Speed.val!=0) if(t2Speed.val!=0)
{ {
@@ -505,6 +507,7 @@ Timer tm0
h2.val=h2.maxval h2.val=h2.maxval
} }
h2.val+=t2Speed.val h2.val+=t2Speed.val
ref t2u
} }
if(t3Speed.val!=0) if(t3Speed.val!=0)
{ {
@@ -518,6 +521,7 @@ Timer tm0
h3.val=h3.maxval h3.val=h3.maxval
} }
h3.val+=t3Speed.val h3.val+=t3Speed.val
ref t3u
} }
if(t4Speed.val!=0) if(t4Speed.val!=0)
{ {
@@ -531,6 +535,7 @@ Timer tm0
h4.val=h4.maxval h4.val=h4.maxval
} }
h4.val+=t4Speed.val h4.val+=t4Speed.val
ref t4u
} }
if(t5Speed.val!=0) if(t5Speed.val!=0)
{ {
@@ -544,6 +549,7 @@ Timer tm0
h5.val=h5.maxval h5.val=h5.maxval
} }
h5.val+=t5Speed.val h5.val+=t5Speed.val
ref t5u
} }
Timer tmSerial Timer tmSerial

View File

@@ -40,7 +40,7 @@ Variable (string) strCommand
Attributes Attributes
Scope : local Scope : local
Text : Text :
Max. Text Size: 400 Max. Text Size: 600
Variable (string) strTmp Variable (string) strTmp
Attributes Attributes
@@ -689,9 +689,7 @@ Timer tmSerial
covx tTmp.txt,t10.bco,0,0 covx tTmp.txt,t10.bco,0,0
spstr strCommand.txt,tTmp.txt,"~",15 spstr strCommand.txt,tTmp.txt,"~",15
covx tTmp.txt,tMainTextAlt2.pco,0,0 covx tTmp.txt,tMainTextAlt2.pco,0,0
//spstr strCommand.txt,tTmp.txt,"~",16 spstr strCommand.txt,tTmp.txt,"~",16
//covx tTmp.txt,tMR.pco,0,0
spstr strCommand.txt,tTmp.txt,"~",17
covx tTmp.txt,tTimeAdd.pco,0,0 covx tTmp.txt,tTimeAdd.pco,0,0
if(tMainTextAlt2.txt!=""&&p0.w!=320) if(tMainTextAlt2.txt!=""&&p0.w!=320)
{ {

Binary file not shown.

Binary file not shown.

View File

@@ -6904,11 +6904,13 @@ def get_icon_id(ma_name):
return ma_name.replace("text:","") return ma_name.replace("text:","")
if "ha:" in ma_name: if "ha:" in ma_name:
return apis.ha_api.render_template(ma_name.replace("ha:","")) return apis.ha_api.render_template(ma_name.replace("ha:",""))
if "ha-i:" in ma_name:
ma_name = apis.ha_api.render_template(ma_name.replace("ha:",""))
ma_name = ma_name.replace("mdi:","") ma_name = ma_name.replace("mdi:","")
if ma_name in icons: if ma_name in icons:
return icons[ma_name] return icons[ma_name]
else: else:
return icons["alert-circle-outline"] return icons["alert-circle-outline"]
def get_icon_char(ma_name): def get_icon_char(ma_name):
return get_icon_id(ma_name) return get_icon_id(ma_name)

View File

@@ -288,7 +288,10 @@ class LuiPagesGen(object):
entityTypePanel = "text" entityTypePanel = "text"
device_class = entity.attributes.get("device_class", "") device_class = entity.attributes.get("device_class", "")
unit_of_measurement = entity.attributes.get("unit_of_measurement", "") unit_of_measurement = entity.attributes.get("unit_of_measurement", "")
value = entity.state + " " + unit_of_measurement value = entity.state
if device_class != "temperature":
value = value + " "
value = value + unit_of_measurement
if entityType == "binary_sensor": if entityType == "binary_sensor":
value = get_translation(self._locale, f"backend.component.binary_sensor.state.{device_class}.{entity.state}") value = get_translation(self._locale, f"backend.component.binary_sensor.state.{device_class}.{entity.state}")
if cardType == "cardGrid" and entityType == "sensor" and icon is None: if cardType == "cardGrid" and entityType == "sensor" and icon is None:
@@ -635,7 +638,12 @@ class LuiPagesGen(object):
speed = str(item.entity_input_config.get("speed", 1)) speed = str(item.entity_input_config.get("speed", 1))
speed = apis.ha_api.render_template(speed) speed = apis.ha_api.render_template(speed)
unit = get_attr_safe(entity, "unit_of_measurement", "") unit = get_attr_safe(entity, "unit_of_measurement", "")
command += f"~{icon_color}~{icon}~{speed}~{entity.state} {unit}" value = f"{entity.state} {unit}"
# Overwrite for value
ovalue = item.value
if ovalue is not None:
value = apis.ha_api.render_template(ovalue)
command += f"~{icon_color}~{icon}~{speed}~{value}"
elif item.entityId == "delete": elif item.entityId == "delete":
command += f"~~~~" command += f"~~~~"
else: else:
@@ -928,4 +936,4 @@ class LuiPagesGen(object):
def send_message_page(self, ident, heading, msg, b1, b2): def send_message_page(self, ident, heading, msg, b1, b2):
self._send_mqtt_msg(f"pageType~popupNotify") self._send_mqtt_msg(f"pageType~popupNotify")
self._send_mqtt_msg(f"entityUpdateDetail~{ident}~{heading}~65535~{b1}~65535~{b2}~65535~{msg}~65535~0") self._send_mqtt_msg(f"entityUpdateDetail~{ident}~{heading}~65535~{b1}~65535~{b2}~65535~{msg}~65535~0")

View File

@@ -7,23 +7,17 @@ default_screensaver_color_mapping = {
"time": "65535", "time": "65535",
"timeAMPM": "65535", "timeAMPM": "65535",
"date": "65535", "date": "65535",
"tMainIcon": "65535",
"tMainText": "65535", "tMainText": "65535",
"tForecast1": "65535", "tForecast1": "65535",
"tForecast2": "65535", "tForecast2": "65535",
"tForecast3": "65535", "tForecast3": "65535",
"tForecast4": "65535", "tForecast4": "65535",
"tF1Icon": "65535",
"tF2Icon": "65535",
"tF3Icon": "65535",
"tF4Icon": "65535",
"tForecast1Val": "65535", "tForecast1Val": "65535",
"tForecast2Val": "65535", "tForecast2Val": "65535",
"tForecast3Val": "65535", "tForecast3Val": "65535",
"tForecast4Val": "65535", "tForecast4Val": "65535",
"bar": "65535", "bar": "65535",
"tMRIcon": "65535", "tMainTextAlt2": "65535",
"tMR": "65535",
"tTimeAdd": "65535" "tTimeAdd": "65535"
} }

View File

@@ -28,7 +28,7 @@ class NsPanelLovelaceUIManager(hass.Hass):
desired_tasmota_driver_version = 8 desired_tasmota_driver_version = 8
desired_display_firmware_version = 49 desired_display_firmware_version = 49
version = "v3.9.0" version = "v3.9.4"
model = cfg.get("model") model = cfg.get("model")
if model == "us-l": if model == "us-l":

View File

@@ -52,7 +52,6 @@ key | option | type | default | description
`time` | True | list | White | `[R, G, B]` `time` | True | list | White | `[R, G, B]`
`timeAMPM` | True | list | White | `[R, G, B]` `timeAMPM` | True | list | White | `[R, G, B]`
`date` | True | list | White | `[R, G, B]` `date` | True | list | White | `[R, G, B]`
`tMainIcon` | True | list | White | `[R, G, B]`
`tMainText` | True | list | White | `[R, G, B]` `tMainText` | True | list | White | `[R, G, B]`
`tForecast1` | True | list | White | `[R, G, B]` `tForecast1` | True | list | White | `[R, G, B]`
`tForecast2` | True | list | White | `[R, G, B]` `tForecast2` | True | list | White | `[R, G, B]`
@@ -63,13 +62,9 @@ key | option | type | default | description
`tForecast3Val` | True | list | White | `[R, G, B]` `tForecast3Val` | True | list | White | `[R, G, B]`
`tForecast4Val` | True | list | White | `[R, G, B]` `tForecast4Val` | True | list | White | `[R, G, B]`
`bar` | True | list | White | `[R, G, B]` `bar` | True | list | White | `[R, G, B]`
`tMainIconAlt` | True | list | White | `[R, G, B]`
`tMainTextAlt` | True | list | White | `[R, G, B]` `tMainTextAlt` | True | list | White | `[R, G, B]`
`tMRIcon` | True | list | White | `[R, G, B]`
`tMR` | True | list | White | `[R, G, B]`
`tTimeAdd` | True | list | White | `[R, G, B]` `tTimeAdd` | True | list | White | `[R, G, B]`
Specify colours as red green and blue values from 0-255 e.g. `[255, 0, 0]` for red or `[0, 0, 255]` for blue. These are translated internally to RGB565 (note that this has lower color depth so the colours may not appear the same). Also note that the screen has a low contrast ratio, so colors look sigificantly different at full display brightness and lowest brightness. Specify colours as red green and blue values from 0-255 e.g. `[255, 0, 0]` for red or `[0, 0, 255]` for blue. These are translated internally to RGB565 (note that this has lower color depth so the colours may not appear the same). Also note that the screen has a low contrast ratio, so colors look sigificantly different at full display brightness and lowest brightness.
Example for the theme config: Example for the theme config:

View File

@@ -73,6 +73,11 @@ There probably not much cases where this is needed, but here is an exmaple to sh
icon: 'ha:{{ state_attr("climate.wohnzimmer_boden","current_temperature")}}' icon: 'ha:{{ state_attr("climate.wohnzimmer_boden","current_temperature")}}'
``` ```
You can use the acual chars for the icon in the above ha: template, however if you want to use the icon names you can use `ha-i` instead. This will be evaluated as HA Template first and then looked up as an icon.
```yaml
icon: 'ha-i:{{ iif(is_state('light.kitchen', 'on'), 'mdi:flashlight', 'mdi:flashlight-off') }}'
```
## Hide item based on state ## Hide item based on state

View File

@@ -26,6 +26,12 @@ Font 4 - Size 80 (Icons and limited chars)
Font 5 - Size 128 (ascii only) Font 5 - Size 128 (ascii only)
``` ```
You need to use the acual char for the icon instead of the icon name which is used in the configuration. You can get the char of the icon from the cheatsheet.
https://docs.nspanel.pky.eu/icon-cheatsheet.html
It is possible to exit from the page by sending `exitPopup` It is possible to exit from the page by sending `exitPopup`

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff