diff -bur HMI/n2t-out/Program.s.txt HMI/US/portrait/n2t-out/Program.s.txt
--- HMI/n2t-out/Program.s.txt	2022-05-15 09:04:03.078760396 +0000
+++ HMI/US/portrait/n2t-out/Program.s.txt	2022-05-15 09:04:03.594763248 +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/cardAlarm.txt HMI/US/portrait/n2t-out/cardAlarm.txt
--- HMI/n2t-out/cardAlarm.txt	2022-05-15 09:04:03.082760419 +0000
+++ HMI/US/portrait/n2t-out/cardAlarm.txt	2022-05-15 09:04:03.594763248 +0000
@@ -466,7 +466,7 @@
             prints crcval,2
             tCode.txt=""
         
-Hotspot mSwipeNext
+Hotspot mSwipePrev
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -486,15 +486,15 @@
             //x & y coordinates where the swipe is first detected.)
             //---------------------------
             //The navigation text is stored as local variable within tld.txt
-            //Pressing right button if swiped on the right side of the screen
+            //Pressing left button if swiped on the left side of the screen
             //
-            spstr tId.txt,tTmp.txt,"|",1
+            spstr tId.txt,tTmp.txt,"|",0
             if(tTmp.txt=="1")
             {
-                click bNext,1
+                click bPrev,1
             }
         
-Hotspot mSwipeUp
+Hotspot mSwipeNext
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -514,15 +514,15 @@
             //x & y coordinates where the swipe is first detected.)
             //---------------------------
             //The navigation text is stored as local variable within tld.txt
-            //Pressing up button if swiped on the top side of the screen
+            //Pressing right button if swiped on the right side of the screen
             //
-            spstr tId.txt,tTmp.txt,"|",0
-            if(tTmp.txt=="2")
+            spstr tId.txt,tTmp.txt,"|",1
+            if(tTmp.txt=="1")
             {
-                click bPrev,1
+                click bNext,1
             }
         
-Hotspot mSwipePrev
+Hotspot mSwipeUp
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -542,10 +542,10 @@
             //x & y coordinates where the swipe is first detected.)
             //---------------------------
             //The navigation text is stored as local variable within tld.txt
-            //Pressing left button if swiped on the left side of the screen
+            //Pressing up button if swiped on the top side of the screen
             //
             spstr tId.txt,tTmp.txt,"|",0
-            if(tTmp.txt=="1")
+            if(tTmp.txt=="2")
             {
                 click bPrev,1
             }
diff -bur HMI/n2t-out/cardEntities.txt HMI/US/portrait/n2t-out/cardEntities.txt
--- HMI/n2t-out/cardEntities.txt	2022-05-15 09:04:03.082760419 +0000
+++ HMI/US/portrait/n2t-out/cardEntities.txt	2022-05-15 09:04:03.594763248 +0000
@@ -62,6 +62,16 @@
             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
             vis bPrev,0
             vis bNext,0
         
@@ -119,6 +129,18 @@
         Text          : 
         Max. Text Size: 80
     
+Variable (string) entn5
+    Attributes
+        Scope         : local
+        Text          : 
+        Max. Text Size: 80
+    
+Variable (string) type5
+    Attributes
+        Scope         : local
+        Text          : 
+        Max. Text Size: 10
+    
 Number nNum1
     Attributes
         Scope                               : local
@@ -155,6 +177,15 @@
         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
+    
 Text tHeading
     Attributes
         Scope                               : local
@@ -285,6 +316,26 @@
         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
+    
 Picture p0
     Attributes
         Scope                               : local
@@ -404,6 +455,34 @@
             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,2
+            crcputs tSend.txt,0
+            //send cmd
+            printh 55 bb
+            prints sys0,2
+            prints tSend.txt,0
+            prints crcval,2
+        
 Button bDown1
     Attributes
         Scope                               : local
@@ -861,6 +940,106 @@
             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,2
+            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,2
+            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,2
+            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,2
+            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
@@ -969,6 +1148,33 @@
             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,2
+            crcputs tSend.txt,0
+            //send cmd
+            printh 55 bb
+            prints sys0,2
+            prints tSend.txt,0
+            prints crcval,2
+        
 Hotspot mSpecial
     Attributes
         Scope                               : local
@@ -1074,6 +1280,28 @@
                 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 mSwipeNext
     Attributes
         Scope                               : local
@@ -1728,6 +1956,128 @@
                                             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,tIcon5.txt,"~",29
+                                            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
+                                        }
                                     }
                                     if(tInstruction.txt=="pageType")
                                     {
diff -bur HMI/n2t-out/cardThermo.txt HMI/US/portrait/n2t-out/cardThermo.txt
--- HMI/n2t-out/cardThermo.txt	2022-05-15 09:04:03.082760419 +0000
+++ HMI/US/portrait/n2t-out/cardThermo.txt	2022-05-15 09:04:03.594763248 +0000
@@ -17,12 +17,9 @@
             vis tInstruction,0
             vis tTmp,0
             vis tId,0
-            vis xTempMin1,0
-            vis xTempMax1,0
-            vis xTempStep1,0
-            vis xTempMin2,0
-            vis xTempMax2,0
-            vis xTempStep2,0
+            vis xTempMin,0
+            vis xTempMax,0
+            vis xTempStep,0
             //tEntity.txt=tHeading.txt
             // disable all buttons
             vis bt0,0
@@ -33,14 +30,7 @@
             vis bt5,0
             vis bt6,0
             vis bt7,0
-            vis tCF2,0
-            vis bUp2,0
-            vis bDown2,0
-            vis xTempDest2,0
-            vis tCF1,0
-            vis btUp1,0
-            vis btDown1,0
-            vis xTempDest1,0
+            vis bt8,0
             vis bPrev,0
             vis bNext,0
         
@@ -104,31 +94,13 @@
         Text          : 
         Max. Text Size: 10
     
-Variable (string) tInstruction
-    Attributes
-        Scope         : local
-        Text          : 
-        Max. Text Size: 20
-    
-Variable (string) tId
-    Attributes
-        Scope         : local
-        Text          : 
-        Max. Text Size: 20
-    
-Variable (string) tTmp
+Variable (string) va8
     Attributes
         Scope         : local
         Text          : 
         Max. Text Size: 10
     
-Variable (string) tSend
-    Attributes
-        Scope         : local
-        Text          : 
-        Max. Text Size: 100
-    
-XFloat xTempDest1
+XFloat xTempCurr
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -137,7 +109,7 @@
         Associated Keyboard                 : none
         Value                               : 0
     
-XFloat xTempMin1
+XFloat xTempDest
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -146,7 +118,7 @@
         Associated Keyboard                 : none
         Value                               : 0
     
-XFloat xTempMax1
+XFloat xTempMin
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -155,7 +127,7 @@
         Associated Keyboard                 : none
         Value                               : 0
     
-XFloat xTempStep1
+XFloat xTempMax
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -164,7 +136,7 @@
         Associated Keyboard                 : none
         Value                               : 0
     
-XFloat xTempDest2
+XFloat xTempStep
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -173,41 +145,45 @@
         Associated Keyboard                 : none
         Value                               : 0
     
-XFloat xTempMin2
+Text tSend
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         Associated Keyboard                 : none
-        Value                               : 0
+        Text                                : newtxt
+        Max. Text Size                      : 100
     
-XFloat xTempMax2
+Text tTmp
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         Associated Keyboard                 : none
-        Value                               : 0
+        Text                                : 
+        Max. Text Size                      : 10
     
-XFloat xTempStep2
+Text tInstruction
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         Associated Keyboard                 : none
-        Value                               : 0
+        Text                                : 
+        Max. Text Size                      : 20
     
-XFloat xTempDest
+Text tId
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         Associated Keyboard                 : none
-        Value                               : 0
+        Text                                : 
+        Max. Text Size                      : 20
     
 Text tHeading
     Attributes
@@ -229,57 +205,7 @@
         Text                                : 
         Max. Text Size                      : 10
     
-Text tCF1
-    Attributes
-        Scope                               : local
-        Dragging                            : 0
-        Disable release event after dragging: 0
-        Send Component ID                   : disabled
-        Associated Keyboard                 : none
-        Text                                : î
-        Max. Text Size                      : 10
-    
-Text tCurTempLbl
-    Attributes
-        Scope                               : local
-        Dragging                            : 0
-        Disable release event after dragging: 0
-        Send Component ID                   : disabled
-        Associated Keyboard                 : none
-        Text                                : Currently
-        Max. Text Size                      : 30
-    
-Text tStateLbl
-    Attributes
-        Scope                               : local
-        Dragging                            : 0
-        Disable release event after dragging: 0
-        Send Component ID                   : disabled
-        Associated Keyboard                 : none
-        Text                                : State
-        Max. Text Size                      : 30
-    
-Text tCF2
-    Attributes
-        Scope                               : local
-        Dragging                            : 0
-        Disable release event after dragging: 0
-        Send Component ID                   : disabled
-        Associated Keyboard                 : none
-        Text                                : î
-        Max. Text Size                      : 10
-    
-Text tALbl
-    Attributes
-        Scope                               : local
-        Dragging                            : 0
-        Disable release event after dragging: 0
-        Send Component ID                   : disabled
-        Associated Keyboard                 : none
-        Text                                : Action
-        Max. Text Size                      : 30
-    
-Text tCF
+Text t2
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -289,16 +215,6 @@
         Text                                : î
         Max. Text Size                      : 10
     
-Text tCurTemp
-    Attributes
-        Scope                               : local
-        Dragging                            : 0
-        Disable release event after dragging: 0
-        Send Component ID                   : disabled
-        Associated Keyboard                 : none
-        Text                                : 
-        Max. Text Size                      : 30
-    
 Picture p0
     Attributes
         Scope                               : local
@@ -331,26 +247,30 @@
             prints tSend.txt,0
             prints crcval,2
         
-Button bPrev
+Button bDown
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         State                               : unpressed
-        Text                                : î°
+        Text                                : 
         Max. Text Size                      : 10
     
     Events
         Touch Press Event
-            tSend.txt="event,buttonPress2,cardThermo,"
-            if(bPrev.txt=="î¶")
+            if(xTempDest.val>xTempMin.val)
             {
-                tSend.txt+="bUp"
-            }else
-            {
-                tSend.txt+="bPrev"
+                xTempDest.val=xTempDest.val-xTempStep.val
             }
+            // event,buttonPress2,entn,tempUpd,X
+            //craft command
+            tSend.txt="event,buttonPress2,"
+            tSend.txt+=entn.txt+","
+            tSend.txt+="tempUpd,"
+            //convert temperature
+            covx xTempDest.val,tTmp.txt,0,0
+            tSend.txt+=tTmp.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -363,21 +283,30 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt0
+Button bUp
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         State                               : unpressed
-        Text                                : î
+        Text                                : 
         Max. Text Size                      : 10
     
     Events
         Touch Press Event
+            if(xTempDest.val<xTempMax.val)
+            {
+                xTempDest.val=xTempDest.val+xTempStep.val
+            }
+            // event,buttonPress2,entn,tempUpd,X
             //craft command
-            tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va0.txt
+            tSend.txt="event,buttonPress2,"
+            tSend.txt+=entn.txt+","
+            tSend.txt+="tempUpd,"
+            //convert temperature
+            covx xTempDest.val,tTmp.txt,0,0
+            tSend.txt+=tTmp.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -390,21 +319,26 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt2
+Button bPrev
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
         State                               : unpressed
-        Text                                : î
+        Text                                : î°
         Max. Text Size                      : 10
     
     Events
         Touch Press Event
-            //craft command
-            tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va2.txt
+            tSend.txt="event,buttonPress2,cardThermo,"
+            if(bPrev.txt=="î¶")
+            {
+                tSend.txt+="bUp"
+            }else
+            {
+                tSend.txt+="bPrev"
+            }
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -417,7 +351,7 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt4
+Dual-state Button bt0
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -431,7 +365,7 @@
         Touch Press Event
             //craft command
             tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va4.txt
+            tSend.txt+=",hvac_action,"+va0.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -444,7 +378,7 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt6
+Dual-state Button bt1
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -458,7 +392,7 @@
         Touch Press Event
             //craft command
             tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va6.txt
+            tSend.txt+=",hvac_action,"+va1.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -471,13 +405,13 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt1
+Dual-state Button bt2
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
-        State                               : pressed
+        State                               : unpressed
         Text                                : î
         Max. Text Size                      : 10
     
@@ -485,7 +419,7 @@
         Touch Press Event
             //craft command
             tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va1.txt
+            tSend.txt+=",hvac_action,"+va2.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -504,7 +438,7 @@
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
-        State                               : pressed
+        State                               : unpressed
         Text                                : î
         Max. Text Size                      : 10
     
@@ -525,13 +459,13 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt5
+Dual-state Button bt4
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
-        State                               : pressed
+        State                               : unpressed
         Text                                : î
         Max. Text Size                      : 10
     
@@ -539,7 +473,7 @@
         Touch Press Event
             //craft command
             tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va5.txt
+            tSend.txt+=",hvac_action,"+va4.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -552,7 +486,7 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bt7
+Dual-state Button bt5
     Attributes
         Scope                               : local
         Dragging                            : 0
@@ -566,115 +500,7 @@
         Touch Press Event
             //craft command
             tSend.txt="event,buttonPress2,"+entn.txt
-            tSend.txt+=",hvac_action,"+va7.txt
-            //send calc crc
-            btlen tSend.txt,sys0
-            crcrest 1,0xffff // reset CRC
-            crcputh 55 bb
-            crcputs sys0,2
-            crcputs tSend.txt,0
-            //send cmd
-            printh 55 bb
-            prints sys0,2
-            prints tSend.txt,0
-            prints crcval,2
-        
-Dual-state Button btUp1
-    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
-            if(xTempDest1.val<xTempMax1.val)
-            {
-                xTempDest1.val=xTempDest1.val+xTempStep1.val
-            }
-            // event,buttonPress2,entn,tempUpd,X
-            //craft command
-            tSend.txt="event,buttonPress2,"
-            tSend.txt+=entn.txt+","
-            tSend.txt+="tempUpdHigh,"
-            //convert temperature
-            covx xTempDest1.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,2
-            crcputs tSend.txt,0
-            //send cmd
-            printh 55 bb
-            prints sys0,2
-            prints tSend.txt,0
-            prints crcval,2
-        
-Dual-state Button btDown1
-    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
-            if(xTempDest1.val>xTempMin1.val)
-            {
-                xTempDest1.val=xTempDest1.val-xTempStep1.val
-            }
-            // event,buttonPress2,entn,tempUpd,X
-            //craft command
-            tSend.txt="event,buttonPress2,"
-            tSend.txt+=entn.txt+","
-            tSend.txt+="tempUpdHigh,"
-            //convert temperature
-            covx xTempDest1.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,2
-            crcputs tSend.txt,0
-            //send cmd
-            printh 55 bb
-            prints sys0,2
-            prints tSend.txt,0
-            prints crcval,2
-        
-Dual-state Button bUp2
-    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
-            if(xTempDest2.val<xTempMax2.val)
-            {
-                xTempDest2.val=xTempDest2.val+xTempStep2.val
-            }
-            // event,buttonPress2,entn,tempUpd,X
-            //craft command
-            tSend.txt="event,buttonPress2,"
-            tSend.txt+=entn.txt+","
-            tSend.txt+="tempUpdLow,"
-            //convert temperature
-            covx xTempDest2.val,tTmp.txt,0,0
-            tSend.txt+=tTmp.txt
+            tSend.txt+=",hvac_action,"+va5.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -687,30 +513,21 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button bDown2
+Dual-state Button bt6
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
-        State                               : unpressed
-        Text                                : î¿
+        State                               : pressed
+        Text                                : î
         Max. Text Size                      : 10
     
     Events
         Touch Press Event
-            if(xTempDest2.val>xTempMin2.val)
-            {
-                xTempDest2.val=xTempDest2.val-xTempStep2.val
-            }
-            // event,buttonPress2,entn,tempUpd,X
             //craft command
-            tSend.txt="event,buttonPress2,"
-            tSend.txt+=entn.txt+","
-            tSend.txt+="tempUpdLow,"
-            //convert temperature
-            covx xTempDest2.val,tTmp.txt,0,0
-            tSend.txt+=tTmp.txt
+            tSend.txt="event,buttonPress2,"+entn.txt
+            tSend.txt+=",hvac_action,"+va6.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -723,30 +540,21 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button btUp
+Dual-state Button bt7
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
-        State                               : unpressed
-        Text                                : î
+        State                               : pressed
+        Text                                : î
         Max. Text Size                      : 10
     
     Events
         Touch Press Event
-            if(xTempDest.val<xTempMax1.val)
-            {
-                xTempDest.val=xTempDest.val+xTempStep1.val
-            }
-            // event,buttonPress2,entn,tempUpd,X
             //craft command
-            tSend.txt="event,buttonPress2,"
-            tSend.txt+=entn.txt+","
-            tSend.txt+="tempUpd,"
-            //convert temperature
-            covx xTempDest.val,tTmp.txt,0,0
-            tSend.txt+=tTmp.txt
+            tSend.txt="event,buttonPress2,"+entn.txt
+            tSend.txt+=",hvac_action,"+va7.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -759,30 +567,21 @@
             prints tSend.txt,0
             prints crcval,2
         
-Dual-state Button btDown
+Dual-state Button bt8
     Attributes
         Scope                               : local
         Dragging                            : 0
         Disable release event after dragging: 0
         Send Component ID                   : disabled
-        State                               : unpressed
-        Text                                : î¿
+        State                               : pressed
+        Text                                : î
         Max. Text Size                      : 10
     
     Events
         Touch Press Event
-            if(xTempDest.val>xTempMin1.val)
-            {
-                xTempDest.val=xTempDest.val-xTempStep1.val
-            }
-            // event,buttonPress2,entn,tempUpd,X
             //craft command
-            tSend.txt="event,buttonPress2,"
-            tSend.txt+=entn.txt+","
-            tSend.txt+="tempUpd,"
-            //convert temperature
-            covx xTempDest.val,tTmp.txt,0,0
-            tSend.txt+=tTmp.txt
+            tSend.txt="event,buttonPress2,"+entn.txt
+            tSend.txt+=",hvac_action,"+va8.txt
             //send calc crc
             btlen tSend.txt,sys0
             crcrest 1,0xffff // reset CRC
@@ -964,22 +763,22 @@
                                         //entity name
                                         spstr strCommand.txt,entn.txt,"~",3
                                         //currentTemp
-                                        spstr strCommand.txt,tCurTemp.txt,"~",4
+                                        spstr strCommand.txt,tTmp.txt,"~",4
+                                        covx tTmp.txt,xTempCurr.val,0,0
                                         //dstTemp
                                         spstr strCommand.txt,tTmp.txt,"~",5
-                                        covx tTmp.txt,xTempDest1.val,0,0
-                                        xTempDest.val=xTempDest1.val
+                                        covx tTmp.txt,xTempDest.val,0,0
                                         //status
                                         spstr strCommand.txt,tStatus.txt,"~",6
                                         //minTemp
                                         spstr strCommand.txt,tTmp.txt,"~",7
-                                        covx tTmp.txt,xTempMin1.val,0,0
+                                        covx tTmp.txt,xTempMin.val,0,0
                                         //maxTemp
                                         spstr strCommand.txt,tTmp.txt,"~",8
-                                        covx tTmp.txt,xTempMax1.val,0,0
+                                        covx tTmp.txt,xTempMax.val,0,0
                                         //tempStep
                                         spstr strCommand.txt,tTmp.txt,"~",9
-                                        covx tTmp.txt,xTempStep1.val,0,0
+                                        covx tTmp.txt,xTempStep.val,0,0
                                         // disable all buttons
                                         vis bt0,0
                                         vis bt1,0
@@ -989,6 +788,7 @@
                                         vis bt5,0
                                         vis bt6,0
                                         vis bt7,0
+                                        vis bt8,0
                                         //bt0
                                         spstr strCommand.txt,bt0.txt,"~",10
                                         if(bt0.txt!="")
@@ -1109,33 +909,20 @@
                                             //enable
                                             vis bt7,1
                                         }
-                                        //Text tCurTempLbl
-                                        spstr strCommand.txt,tCurTempLbl.txt,"~",42
-                                        //Text tStateLbl
-                                        spstr strCommand.txt,tStateLbl.txt,"~",43
-                                        //Text tALbl
-                                        spstr strCommand.txt,tALbl.txt,"~",44
-                                        //Text tCF
-                                        spstr strCommand.txt,tCF.txt,"~",45
-                                        tCF1.txt=tCF.txt
-                                        tCF2.txt=tCF.txt
-                                        //Second Temperature
-                                        spstr strCommand.txt,tTmp.txt,"~",46
-                                        if(tTmp.txt!="")
-                                        {
-                                            covx tTmp.txt,xTempDest2.val,0,0
-                                            vis btUp,0
-                                            vis xTempDest,0
-                                            vis btDown,0
-                                            vis tCF,0
-                                            vis btUp1,1
-                                            vis xTempDest1,1
-                                            vis btDown1,1
-                                            vis tCF1,1
-                                            vis bUp2,1
-                                            vis xTempDest2,1
-                                            vis bDown2,1
-                                            vis tCF2,1
+                                        //bt8
+                                        spstr strCommand.txt,bt8.txt,"~",42
+                                        if(bt8.txt!="")
+                                        {
+                                            // set text color on active state
+                                            spstr strCommand.txt,tTmp.txt,"~",43
+                                            covx tTmp.txt,bt8.pco2,0,0
+                                            // set state
+                                            spstr strCommand.txt,tTmp.txt,"~",44
+                                            covx tTmp.txt,bt8.val,0,0
+                                            // save action
+                                            spstr strCommand.txt,va8.txt,"~",45
+                                            //enable
+                                            vis bt8,1
                                         }
                                     }
                                     if(tInstruction.txt=="pageType")
diff -bur HMI/n2t-out/pageStartup.txt HMI/US/portrait/n2t-out/pageStartup.txt
--- HMI/n2t-out/pageStartup.txt	2022-05-15 09:04:03.082760419 +0000
+++ HMI/US/portrait/n2t-out/pageStartup.txt	2022-05-15 09:04:03.594763248 +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
@@ -351,7 +351,7 @@
     
     Events
         Timer Event
-            xpic mSpinner.x,mSpinner.y,spinner_w.val,140,frame_ptr.val,0,9 // draw the current frame
+            xpic mSpinner.x,mSpinner.y,spinner_w.val,140,frame_ptr.val,0,11 // draw the current frame
             frame_ptr.val+=spinner_w.val%frapic_w.val // advance the pointer to the next frame in the pic resource and roll over at the end
             doevents // finish drawing before next timer event triggers
             if(frame_ptr.val==1820)
