mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2025-12-23 16:04:25 +01:00
sync (add nextion2text) (add nextion2text)
This commit is contained in:
committed by
github-actions[bot]
parent
122cf6933e
commit
3498e34c1b
@@ -1,16 +0,0 @@
|
||||
Program.s
|
||||
//The following code is only run once when power on, and is generally used for global variable definition and power on initialization data
|
||||
int sys0=0,sys1=0,sys2=0 //At present, the definition of global variable only supports 4-byte signed integer (int), and other types of global quantity declaration are not supported. If you want to use string type, you can use variable control in the page to implement
|
||||
int bufferPos=0
|
||||
int recvCrc=0
|
||||
int payloadLength=0
|
||||
int par0=0,par1=0
|
||||
// sleep timeout in s
|
||||
int sleepTimeout=20
|
||||
int sleepValue=0
|
||||
// dim value
|
||||
int dimValue=40
|
||||
int dimValueNormal=100
|
||||
//color vars
|
||||
int defaultFontColor=65535
|
||||
int defaultBcoColor=6371
|
||||
@@ -1,921 +0,0 @@
|
||||
Page cardAlarm
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis arm1,0
|
||||
vis arm2,0
|
||||
vis arm3,0
|
||||
vis arm4,0
|
||||
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 b11,0
|
||||
vis tCode,0
|
||||
vis bPrev,0
|
||||
vis bNext,0
|
||||
cardAlarm.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<40;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
}
|
||||
if(defaultBcoColor==0)
|
||||
{
|
||||
tCode.bco=6371
|
||||
tCode.pco=40179
|
||||
}
|
||||
if(defaultBcoColor==6371)
|
||||
{
|
||||
tCode.bco=10565
|
||||
tCode.pco=40179
|
||||
}
|
||||
|
||||
Variable (string) entn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) va1
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) va2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) va3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) va4
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) vaAddBtn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Text tCode
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tIcon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tTmp
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button arm1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va1.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button arm2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va2.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button arm3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va3.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button arm4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va4.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button b0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 1
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"1"
|
||||
|
||||
Button b1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 2
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"2"
|
||||
|
||||
Button b10
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 0
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"0"
|
||||
|
||||
Button b11
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : CLR
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=""
|
||||
|
||||
Button b2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 3
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"3"
|
||||
|
||||
Button b3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 4
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"4"
|
||||
|
||||
Button b4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 5
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"5"
|
||||
|
||||
Button b5
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 6
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"6"
|
||||
|
||||
Button b6
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 7
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"7"
|
||||
|
||||
Button b7
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 8
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"8"
|
||||
|
||||
Button b8
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 9
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"9"
|
||||
|
||||
Button b9
|
||||
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
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
if(vaAddBtn.txt!="")
|
||||
{
|
||||
tSend.txt+=vaAddBtn.txt+",button"
|
||||
}else
|
||||
{
|
||||
tSend.txt+=entn.txt+",opnSensorNotify"
|
||||
}
|
||||
//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
|
||||
tCode.txt=""
|
||||
|
||||
Button bNext
|
||||
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,cardAlarm,"
|
||||
if(bPrev.txt=="î")
|
||||
{
|
||||
tSend.txt+="bHome"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bNext"
|
||||
}
|
||||
//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 bPrev
|
||||
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,cardAlarm,"
|
||||
if(bPrev.txt=="î¶")
|
||||
{
|
||||
tSend.txt+="bUp"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bPrev"
|
||||
}
|
||||
//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 mSwipeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bNext,1
|
||||
|
||||
Hotspot mSwipePrev
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Hotspot mSwipeUp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Timer tmFlash
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 600
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(tIcon.isbr==1)
|
||||
{
|
||||
tIcon.isbr=0
|
||||
vis tIcon,0
|
||||
}else
|
||||
{
|
||||
tIcon.isbr=1
|
||||
vis tIcon,1
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="entityUpd")
|
||||
{
|
||||
//entn
|
||||
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
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,1
|
||||
tsw mSwipeUp,0
|
||||
bPrev.txt="î°"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,1
|
||||
bPrev.txt="î¶"
|
||||
}
|
||||
spstr tId.txt,tTmp.txt,"|",1
|
||||
if(tTmp.txt=="0")
|
||||
{
|
||||
vis bNext,0
|
||||
tsw mSwipeNext,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bNext,1
|
||||
tsw mSwipeNext,1
|
||||
bNext.txt="î³"
|
||||
}
|
||||
//text arm1
|
||||
spstr strCommand.txt,arm1.txt,"~",3
|
||||
if(arm1.txt!="")
|
||||
{
|
||||
vis arm1,1
|
||||
}
|
||||
//id arm1
|
||||
spstr strCommand.txt,va1.txt,"~",4
|
||||
//text arm2
|
||||
spstr strCommand.txt,arm2.txt,"~",5
|
||||
if(arm2.txt!="")
|
||||
{
|
||||
vis arm2,1
|
||||
}
|
||||
//id arm2
|
||||
spstr strCommand.txt,va2.txt,"~",6
|
||||
//text arm3
|
||||
spstr strCommand.txt,arm3.txt,"~",7
|
||||
if(arm3.txt!="")
|
||||
{
|
||||
vis arm3,1
|
||||
}
|
||||
//id arm3
|
||||
spstr strCommand.txt,va3.txt,"~",8
|
||||
//text arm4
|
||||
spstr strCommand.txt,arm4.txt,"~",9
|
||||
if(arm4.txt!="")
|
||||
{
|
||||
vis arm4,1
|
||||
}
|
||||
//id arm4
|
||||
spstr strCommand.txt,va4.txt,"~",10
|
||||
//icon
|
||||
spstr strCommand.txt,tIcon.txt,"~",11
|
||||
//icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,sys0,0,0
|
||||
tIcon.pco=sys0
|
||||
//numpad status
|
||||
spstr strCommand.txt,tTmp.txt,"~",13
|
||||
if(tTmp.txt!="disable")
|
||||
{
|
||||
vis b0,1
|
||||
vis b1,1
|
||||
vis b2,1
|
||||
vis b3,1
|
||||
vis b4,1
|
||||
vis b5,1
|
||||
vis b6,1
|
||||
vis b7,1
|
||||
vis b8,1
|
||||
vis b9,1
|
||||
vis b10,1
|
||||
vis b11,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 b11,0
|
||||
vis tCode,0
|
||||
}
|
||||
//flashing status
|
||||
spstr strCommand.txt,tTmp.txt,"~",14
|
||||
if(tTmp.txt=="enable")
|
||||
{
|
||||
tmFlash.en=1
|
||||
}else
|
||||
{
|
||||
tmFlash.en=0
|
||||
}
|
||||
// extra button
|
||||
spstr strCommand.txt,b9.txt,"~",15
|
||||
if(b9.txt!="")
|
||||
{
|
||||
vis b9,1
|
||||
spstr strCommand.txt,tTmp.txt,"~",16
|
||||
covx tTmp.txt,b9.pco,0,0
|
||||
spstr strCommand.txt,vaAddBtn.txt,"~",17
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
sleepValue=0
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
tSend.txt="event,sleepReached,cardAlarm"
|
||||
//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
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
@@ -1,989 +0,0 @@
|
||||
Page popupThermo
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
//get entitiy name
|
||||
tEntity.txt=pageIcons.tTmp1.txt
|
||||
//get entity id
|
||||
entn.txt=pageIcons.tTmp2.txt
|
||||
tIcon1.txt=pageIcons.tTmp3.txt
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tTmp,0
|
||||
vis tInstruction,0
|
||||
vis tId,0
|
||||
vis bModeNext,0
|
||||
vis cModeNext,0
|
||||
vis dModeNext,0
|
||||
//page open event
|
||||
// event,pageOpenDetail,typeOfPage,tEntityName
|
||||
// craft command
|
||||
tSend.txt="event,pageOpenDetail,popupThermo,"+entn.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
|
||||
popupThermo.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<43;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
if(b[sys0].type==53&&defaultBcoColor==0)
|
||||
{
|
||||
b[sys0].pic=10
|
||||
b[sys0].pic2=11
|
||||
}
|
||||
}
|
||||
|
||||
Variable (string) entn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (int32) mode
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 1
|
||||
|
||||
Variable (int32) mode_temp
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 500
|
||||
|
||||
Variable (string) tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) vaModeCur
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 40
|
||||
|
||||
Variable (string) vaModeCur2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 40
|
||||
|
||||
Variable (string) vaModeCur3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 40
|
||||
|
||||
Variable (string) vaModeList
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (string) vaModeList2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (string) vaModeList3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (int32) vaModePos
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) vaModePos2
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) vaModePos3
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (string) vaType
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) vaType2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) vaType3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Text heading1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text heading2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text heading3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text tEntity
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text tIcon1
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button b0
|
||||
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,popupLight,bExit"
|
||||
//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 bMode1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType.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 bMode2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType.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 bMode3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType.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 bModeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 3
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//if(bMode3.txt=="")
|
||||
spstr vaModeList.txt,tTmp.txt,"?",vaModePos.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos.val=0
|
||||
spstr vaModeList.txt,bMode1.txt,"?",vaModePos.val
|
||||
spstr vaModeList.txt,bMode2.txt,"?",vaModePos.val+1
|
||||
spstr vaModeList.txt,bMode3.txt,"?",vaModePos.val+2
|
||||
}
|
||||
spstr vaModeList.txt,bMode1.txt,"?",vaModePos.val
|
||||
spstr vaModeList.txt,bMode2.txt,"?",vaModePos.val+1
|
||||
spstr vaModeList.txt,bMode3.txt,"?",vaModePos.val+2
|
||||
vaModePos.val+=3
|
||||
spstr vaModeList.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis bModeNext,0
|
||||
}else
|
||||
{
|
||||
vis bModeNext,1
|
||||
}
|
||||
bMode1.pco=defaultFontColor
|
||||
bMode2.pco=defaultFontColor
|
||||
bMode3.pco=defaultFontColor
|
||||
if(bMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode1.pco=1374
|
||||
}
|
||||
if(bMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode2.pco=1374
|
||||
}
|
||||
if(bMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode3.pco=1374
|
||||
}
|
||||
|
||||
Button cMode1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos2.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType2.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 cMode2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos2.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType2.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 cMode3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos2.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType2.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 cModeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 3
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
spstr vaModeList2.txt,tTmp.txt,"?",vaModePos2.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos2.val=0
|
||||
spstr vaModeList2.txt,cMode1.txt,"?",vaModePos2.val
|
||||
spstr vaModeList2.txt,cMode2.txt,"?",vaModePos2.val+1
|
||||
spstr vaModeList2.txt,cMode3.txt,"?",vaModePos2.val+2
|
||||
}
|
||||
spstr vaModeList2.txt,cMode1.txt,"?",vaModePos2.val
|
||||
spstr vaModeList2.txt,cMode2.txt,"?",vaModePos2.val+1
|
||||
spstr vaModeList2.txt,cMode3.txt,"?",vaModePos2.val+2
|
||||
vaModePos2.val+=3
|
||||
spstr vaModeList2.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis cModeNext,0
|
||||
}else
|
||||
{
|
||||
vis cModeNext,1
|
||||
}
|
||||
cMode1.pco=defaultFontColor
|
||||
cMode2.pco=defaultFontColor
|
||||
cMode3.pco=defaultFontColor
|
||||
if(cMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
cMode1.pco=1374
|
||||
}
|
||||
if(cMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
cMode2.pco=1374
|
||||
}
|
||||
if(cMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
cMode3.pco=1374
|
||||
}
|
||||
|
||||
Button dMode1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos3.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType3.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 dMode2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos3.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType3.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 dMode3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos3.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType3.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 dModeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 3
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
spstr vaModeList3.txt,tTmp.txt,"?",vaModePos3.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos3.val=0
|
||||
spstr vaModeList3.txt,dMode1.txt,"?",vaModePos3.val
|
||||
spstr vaModeList3.txt,dMode2.txt,"?",vaModePos3.val+1
|
||||
spstr vaModeList3.txt,dMode3.txt,"?",vaModePos3.val+2
|
||||
}
|
||||
spstr vaModeList3.txt,dMode1.txt,"?",vaModePos3.val
|
||||
spstr vaModeList3.txt,dMode2.txt,"?",vaModePos3.val+1
|
||||
spstr vaModeList3.txt,dMode3.txt,"?",vaModePos3.val+2
|
||||
vaModePos3.val+=3
|
||||
spstr vaModeList3.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis dModeNext,0
|
||||
}else
|
||||
{
|
||||
vis dModeNext,1
|
||||
}
|
||||
dMode1.pco=defaultFontColor
|
||||
dMode2.pco=defaultFontColor
|
||||
dMode3.pco=defaultFontColor
|
||||
if(dMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
dMode1.pco=1374
|
||||
}
|
||||
if(dMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
dMode2.pco=1374
|
||||
}
|
||||
if(dMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
dMode3.pco=1374
|
||||
}
|
||||
|
||||
Timer tmCooldown
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 100
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
tmCooldown.en=0
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
if(tInstruction.txt=="entityUpdateDetail"&&entn.txt==tTmp.txt)
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,tIcon1.txt,"~",2
|
||||
vis tIcon1,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
covx tTmp.txt,sys0,0,0
|
||||
tIcon1.pco=sys0
|
||||
//mode 1 heading
|
||||
spstr strCommand.txt,heading1.txt,"~",4
|
||||
//mode 1 type
|
||||
spstr strCommand.txt,vaType.txt,"~",5
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur.txt,"~",6
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList.txt,"~",7
|
||||
if(vaModeList.txt=="")
|
||||
{
|
||||
vis bMode1,0
|
||||
vis bMode2,0
|
||||
vis bMode3,0
|
||||
vis bModeNext,0
|
||||
}
|
||||
if(bMode1.txt=="")
|
||||
{
|
||||
click bModeNext,1
|
||||
click bModeNext,0
|
||||
}
|
||||
bMode1.pco=defaultFontColor
|
||||
bMode2.pco=defaultFontColor
|
||||
bMode3.pco=defaultFontColor
|
||||
if(bMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode1.pco=1374
|
||||
}
|
||||
if(bMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode2.pco=1374
|
||||
}
|
||||
if(bMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode3.pco=1374
|
||||
}
|
||||
//mode 2 heading
|
||||
spstr strCommand.txt,heading2.txt,"~",8
|
||||
//mode 2 type
|
||||
spstr strCommand.txt,vaType2.txt,"~",9
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur2.txt,"~",10
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList2.txt,"~",11
|
||||
if(vaModeList2.txt=="")
|
||||
{
|
||||
vis cMode1,0
|
||||
vis cMode2,0
|
||||
vis cMode3,0
|
||||
vis cModeNext,0
|
||||
}
|
||||
if(cMode1.txt=="")
|
||||
{
|
||||
click cModeNext,1
|
||||
click cModeNext,0
|
||||
}
|
||||
cMode1.pco=defaultFontColor
|
||||
cMode2.pco=defaultFontColor
|
||||
cMode3.pco=defaultFontColor
|
||||
if(cMode1.txt==vaModeCur2.txt)
|
||||
{
|
||||
cMode1.pco=1374
|
||||
}
|
||||
if(cMode2.txt==vaModeCur2.txt)
|
||||
{
|
||||
cMode2.pco=1374
|
||||
}
|
||||
if(cMode3.txt==vaModeCur2.txt)
|
||||
{
|
||||
cMode3.pco=1374
|
||||
}
|
||||
//mode 3 heading
|
||||
spstr strCommand.txt,heading3.txt,"~",12
|
||||
//mode 3 type
|
||||
spstr strCommand.txt,vaType3.txt,"~",13
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur3.txt,"~",14
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList3.txt,"~",15
|
||||
if(vaModeList3.txt=="")
|
||||
{
|
||||
vis dMode1,0
|
||||
vis dMode2,0
|
||||
vis dMode3,0
|
||||
vis dModeNext,0
|
||||
}
|
||||
if(dMode1.txt=="")
|
||||
{
|
||||
click dModeNext,1
|
||||
click dModeNext,0
|
||||
}
|
||||
dMode1.pco=defaultFontColor
|
||||
dMode2.pco=defaultFontColor
|
||||
dMode3.pco=defaultFontColor
|
||||
if(dMode1.txt==vaModeCur3.txt)
|
||||
{
|
||||
dMode1.pco=1374
|
||||
}
|
||||
if(dMode2.txt==vaModeCur3.txt)
|
||||
{
|
||||
dMode2.pco=1374
|
||||
}
|
||||
if(dMode3.txt==vaModeCur3.txt)
|
||||
{
|
||||
dMode3.pco=1374
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSleep
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 1000
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(sleepTimeout!=0)
|
||||
{
|
||||
sleepValue+=1
|
||||
if(sleepTimeout<=sleepValue)
|
||||
{
|
||||
sleepValue=0
|
||||
click b0,1
|
||||
click b0,0
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,967 +0,0 @@
|
||||
Page cardGrid
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
//remove background & activate reparse mode
|
||||
vis p0,0
|
||||
recmod=1
|
||||
bauds=115200
|
||||
//debug stuff
|
||||
vis tTmp,0
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tId,0
|
||||
vis bEntity1,0
|
||||
vis bEntity2,0
|
||||
vis bEntity3,0
|
||||
vis bEntity4,0
|
||||
vis bEntity5,0
|
||||
vis bEntity6,0
|
||||
vis tEntity1,0
|
||||
vis tEntity2,0
|
||||
vis tEntity3,0
|
||||
vis tEntity4,0
|
||||
vis tEntity5,0
|
||||
vis tEntity6,0
|
||||
vis bPrev,0
|
||||
vis bNext,0
|
||||
cardGrid.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<42;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
}
|
||||
|
||||
Variable (string) entn1
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn4
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn5
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn6
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 500
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) type1
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type4
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type5
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type6
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Text tEntity1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity1
|
||||
Max. Text Size : 30
|
||||
|
||||
Text tEntity2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity2
|
||||
Max. Text Size : 30
|
||||
|
||||
Text tEntity3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity3
|
||||
Max. Text Size : 30
|
||||
|
||||
Text tEntity4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity4
|
||||
Max. Text Size : 30
|
||||
|
||||
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 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 tHeading
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 50
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tTmp
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button bEntity1
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type1.txt
|
||||
pageIcons.tTmp1.txt=tEntity1.txt
|
||||
pageIcons.tTmp2.txt=entn1.txt
|
||||
pageIcons.tTmp3.txt=bEntity1.txt
|
||||
if(type1.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn1.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
|
||||
|
||||
Button bEntity2
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type2.txt
|
||||
pageIcons.tTmp1.txt=tEntity2.txt
|
||||
pageIcons.tTmp2.txt=entn2.txt
|
||||
pageIcons.tTmp3.txt=bEntity2.txt
|
||||
if(type2.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn2.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
|
||||
|
||||
Button bEntity3
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type3.txt
|
||||
pageIcons.tTmp1.txt=tEntity3.txt
|
||||
pageIcons.tTmp2.txt=entn3.txt
|
||||
pageIcons.tTmp3.txt=bEntity3.txt
|
||||
if(type3.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn3.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
|
||||
|
||||
Button bEntity4
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type4.txt
|
||||
pageIcons.tTmp1.txt=tEntity4.txt
|
||||
pageIcons.tTmp2.txt=entn4.txt
|
||||
pageIcons.tTmp3.txt=bEntity4.txt
|
||||
if(type4.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn4.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
|
||||
|
||||
Button bEntity5
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type5.txt
|
||||
pageIcons.tTmp1.txt=tEntity5.txt
|
||||
pageIcons.tTmp2.txt=entn5.txt
|
||||
pageIcons.tTmp3.txt=bEntity5.txt
|
||||
if(type5.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
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
|
||||
|
||||
Button bEntity6
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type6.txt
|
||||
pageIcons.tTmp1.txt=tEntity6.txt
|
||||
pageIcons.tTmp2.txt=entn6.txt
|
||||
pageIcons.tTmp3.txt=bEntity6.txt
|
||||
if(type6.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn6.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
|
||||
|
||||
Button bNext
|
||||
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,cardGrid,"
|
||||
if(bPrev.txt=="î")
|
||||
{
|
||||
tSend.txt+="bHome"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bNext"
|
||||
}
|
||||
//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 bPrev
|
||||
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,cardGrid,"
|
||||
if(bPrev.txt=="î¶")
|
||||
{
|
||||
tSend.txt+="bUp"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bPrev"
|
||||
}
|
||||
//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
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sys2=sys2+1
|
||||
sys2%=10
|
||||
//n0.val=sys2
|
||||
if(sys2==9)
|
||||
{
|
||||
page pageTest
|
||||
}
|
||||
|
||||
Hotspot mSwipeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bNext,1
|
||||
|
||||
Hotspot mSwipePrev
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Hotspot mSwipeUp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Timer tmLP
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 500
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(tTmp.txt=="light")
|
||||
{
|
||||
page popupLight
|
||||
}
|
||||
if(tTmp.txt=="fan")
|
||||
{
|
||||
page popupFan
|
||||
}
|
||||
if(tTmp.txt=="input_sel")
|
||||
{
|
||||
page popupInSel
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="entityUpd")
|
||||
{
|
||||
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
|
||||
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
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,1
|
||||
tsw mSwipeUp,0
|
||||
bPrev.txt="î°"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,1
|
||||
bPrev.txt="î¶"
|
||||
}
|
||||
spstr tId.txt,tTmp.txt,"|",1
|
||||
if(tTmp.txt=="0")
|
||||
{
|
||||
vis bNext,0
|
||||
tsw mSwipeNext,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bNext,1
|
||||
tsw mSwipeNext,1
|
||||
bNext.txt="î³"
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type1.txt,"~",3
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn1.txt,"~",4
|
||||
if(type1.txt=="delete"||type1.txt=="")
|
||||
{
|
||||
vis tEntity1,0
|
||||
vis bEntity1,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity1.txt,"~",5
|
||||
vis bEntity1,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",6
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity1.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity1.txt,"~",7
|
||||
vis tEntity1,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type2.txt,"~",9
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn2.txt,"~",10
|
||||
if(type2.txt=="delete"||type2.txt=="")
|
||||
{
|
||||
vis tEntity2,0
|
||||
vis bEntity2,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity2.txt,"~",11
|
||||
vis bEntity2,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity2.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity2.txt,"~",13
|
||||
vis tEntity2,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type3.txt,"~",15
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn3.txt,"~",16
|
||||
if(type3.txt=="delete"||type3.txt=="")
|
||||
{
|
||||
vis tEntity3,0
|
||||
vis bEntity3,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity3.txt,"~",17
|
||||
vis bEntity3,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity3.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity3.txt,"~",19
|
||||
vis tEntity3,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type4.txt,"~",21
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn4.txt,"~",22
|
||||
if(type4.txt=="delete"||type4.txt=="")
|
||||
{
|
||||
vis tEntity4,0
|
||||
vis bEntity4,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity4.txt,"~",23
|
||||
vis bEntity4,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",24
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity4.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity4.txt,"~",25
|
||||
vis tEntity4,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type5.txt,"~",27
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn5.txt,"~",28
|
||||
if(type5.txt=="delete"||type5.txt=="")
|
||||
{
|
||||
vis tEntity5,0
|
||||
vis bEntity5,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity5.txt,"~",29
|
||||
vis bEntity5,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",30
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity5.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity5.txt,"~",31
|
||||
vis tEntity5,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type6.txt,"~",33
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn6.txt,"~",34
|
||||
if(type6.txt=="delete"||type6.txt=="")
|
||||
{
|
||||
vis tEntity6,0
|
||||
vis bEntity6,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity6.txt,"~",35
|
||||
vis bEntity6,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",36
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity6.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity6.txt,"~",37
|
||||
vis tEntity6,1
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="pageType")
|
||||
{
|
||||
sleepValue=0
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
tSend.txt="event,sleepReached,cardGrid"
|
||||
//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
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
@@ -1,880 +0,0 @@
|
||||
Page cardPower
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis bPrev,0
|
||||
vis bNext,0
|
||||
tsw h0,0
|
||||
tsw h1,0
|
||||
tsw h2,0
|
||||
tsw h3,0
|
||||
tsw h4,0
|
||||
tsw h5,0
|
||||
vis h0,0
|
||||
vis h1,0
|
||||
vis h2,0
|
||||
vis h3,0
|
||||
vis h4,0
|
||||
vis h5,0
|
||||
vis t0Icon,0
|
||||
vis t1Icon,0
|
||||
vis t2Icon,0
|
||||
vis t3Icon,0
|
||||
vis t4Icon,0
|
||||
vis t5Icon,0
|
||||
cardPower.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<43;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
if(defaultBcoColor==0)
|
||||
{
|
||||
if(b[sys0].type==1)
|
||||
{
|
||||
b[sys0].pic=19
|
||||
b[sys0].pic1=19
|
||||
b[sys0].pic2=15
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 275
|
||||
|
||||
Variable (int32) t0Speed
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) t1Speed
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) t2Speed
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) t3Speed
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) t4Speed
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) t5Speed
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (string) tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Text t0Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î¢
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t0u
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text t1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t1Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î¶
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t1u
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text t2Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î °
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t2u
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text t3Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î °
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t3u
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text t4Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î´½
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t4u
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text t5Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î
|
||||
Max. Text Size : 5
|
||||
|
||||
Text t5u
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tHeading
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tHome
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Slider h0
|
||||
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
|
||||
|
||||
Slider h1
|
||||
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
|
||||
|
||||
Slider h2
|
||||
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
|
||||
|
||||
Slider h3
|
||||
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
|
||||
|
||||
Slider h4
|
||||
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
|
||||
|
||||
Slider h5
|
||||
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
|
||||
|
||||
Button bNext
|
||||
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,cardPower,"
|
||||
if(bPrev.txt=="î")
|
||||
{
|
||||
tSend.txt+="bHome"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bNext"
|
||||
}
|
||||
//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 bPrev
|
||||
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,cardAlarm,"
|
||||
if(bPrev.txt=="î¶")
|
||||
{
|
||||
tSend.txt+="bUp"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bPrev"
|
||||
}
|
||||
//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 mSwipeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bNext,1
|
||||
|
||||
Hotspot mSwipePrev
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Hotspot mSwipeUp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Timer tm0
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 100
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
sys0=h0.val+t0Speed.val
|
||||
if(sys0>h0.maxval)
|
||||
{
|
||||
h0.val=h0.minval
|
||||
}
|
||||
if(sys0<h0.minval)
|
||||
{
|
||||
h0.val=h0.maxval
|
||||
}
|
||||
h0.val+=t0Speed.val
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="entityUpd")
|
||||
{
|
||||
// command format: entityUpd,heading,navigation,colorHome,iconHome[,iconColor,icon,speed,valueUp,valueDown]x6
|
||||
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
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,1
|
||||
tsw mSwipeUp,0
|
||||
bPrev.txt="î°"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,1
|
||||
bPrev.txt="î¶"
|
||||
}
|
||||
spstr tId.txt,tTmp.txt,"|",1
|
||||
if(tTmp.txt=="0")
|
||||
{
|
||||
vis bNext,0
|
||||
tsw mSwipeNext,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bNext,1
|
||||
tsw mSwipeNext,1
|
||||
bNext.txt="î³"
|
||||
}
|
||||
// icon color home
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
covx tTmp.txt,t1.pco,0,0
|
||||
// icon home
|
||||
spstr strCommand.txt,t1.txt,"~",4
|
||||
// text home
|
||||
spstr strCommand.txt,tHome.txt,"~",5
|
||||
// iconColor
|
||||
spstr strCommand.txt,tTmp.txt,"~",6
|
||||
covx tTmp.txt,t0Icon.pco,0,0
|
||||
// icon
|
||||
spstr strCommand.txt,t0Icon.txt,"~",7
|
||||
// speed
|
||||
spstr strCommand.txt,tTmp.txt,"~",8
|
||||
covx tTmp.txt,t0Speed.val,0,0
|
||||
// lower text
|
||||
spstr strCommand.txt,t0u.txt,"~",9
|
||||
if(t0Icon.txt!="")
|
||||
{
|
||||
vis t0Icon,1
|
||||
vis t0u,1
|
||||
vis h0,1
|
||||
}else
|
||||
{
|
||||
vis t0Icon,0
|
||||
vis t0u,0
|
||||
vis h0,0
|
||||
}
|
||||
// iconColor
|
||||
spstr strCommand.txt,tTmp.txt,"~",10
|
||||
covx tTmp.txt,t1Icon.pco,0,0
|
||||
// icon
|
||||
spstr strCommand.txt,t1Icon.txt,"~",11
|
||||
// speed
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,t1Speed.val,0,0
|
||||
// lower text
|
||||
spstr strCommand.txt,t1u.txt,"~",13
|
||||
if(t1Icon.txt!="")
|
||||
{
|
||||
vis t1Icon,1
|
||||
vis t1u,1
|
||||
vis h1,1
|
||||
}else
|
||||
{
|
||||
vis t1Icon,0
|
||||
vis t1u,0
|
||||
vis h1,0
|
||||
}
|
||||
// iconColor
|
||||
spstr strCommand.txt,tTmp.txt,"~",14
|
||||
covx tTmp.txt,t2Icon.pco,0,0
|
||||
// icon
|
||||
spstr strCommand.txt,t2Icon.txt,"~",15
|
||||
// speed
|
||||
spstr strCommand.txt,tTmp.txt,"~",16
|
||||
covx tTmp.txt,t2Speed.val,0,0
|
||||
// lower text
|
||||
spstr strCommand.txt,t2u.txt,"~",17
|
||||
if(t2Icon.txt!="")
|
||||
{
|
||||
vis t2Icon,1
|
||||
vis t2u,1
|
||||
vis h2,1
|
||||
}else
|
||||
{
|
||||
vis t2Icon,0
|
||||
vis t2u,0
|
||||
vis h2,0
|
||||
}
|
||||
// iconColor
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,t3Icon.pco,0,0
|
||||
// icon
|
||||
spstr strCommand.txt,t3Icon.txt,"~",19
|
||||
// speed
|
||||
spstr strCommand.txt,tTmp.txt,"~",20
|
||||
covx tTmp.txt,t3Speed.val,0,0
|
||||
// lower text
|
||||
spstr strCommand.txt,t3u.txt,"~",21
|
||||
if(t3Icon.txt!="")
|
||||
{
|
||||
vis t3Icon,1
|
||||
vis t3u,1
|
||||
vis h3,1
|
||||
}else
|
||||
{
|
||||
vis t3Icon,0
|
||||
vis t3u,0
|
||||
vis h3,0
|
||||
}
|
||||
// iconColor
|
||||
spstr strCommand.txt,tTmp.txt,"~",22
|
||||
covx tTmp.txt,t4Icon.pco,0,0
|
||||
// icon
|
||||
spstr strCommand.txt,t4Icon.txt,"~",23
|
||||
// speed
|
||||
spstr strCommand.txt,tTmp.txt,"~",24
|
||||
covx tTmp.txt,t4Speed.val,0,0
|
||||
// lower text
|
||||
spstr strCommand.txt,t4u.txt,"~",25
|
||||
if(t4Icon.txt!="")
|
||||
{
|
||||
vis t4Icon,1
|
||||
vis t4u,1
|
||||
vis h4,1
|
||||
}else
|
||||
{
|
||||
vis t4Icon,0
|
||||
vis t4u,0
|
||||
vis h4,0
|
||||
}
|
||||
// iconColor
|
||||
spstr strCommand.txt,tTmp.txt,"~",26
|
||||
covx tTmp.txt,t5Icon.pco,0,0
|
||||
// icon
|
||||
spstr strCommand.txt,t5Icon.txt,"~",27
|
||||
// speed
|
||||
spstr strCommand.txt,tTmp.txt,"~",28
|
||||
covx tTmp.txt,t5Speed.val,0,0
|
||||
// lower text
|
||||
spstr strCommand.txt,t5u.txt,"~",29
|
||||
if(t5Icon.txt!="")
|
||||
{
|
||||
vis t5Icon,1
|
||||
vis t5u,1
|
||||
vis h5,1
|
||||
}else
|
||||
{
|
||||
vis t5Icon,0
|
||||
vis t5u,0
|
||||
vis h5,0
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="pageType")
|
||||
{
|
||||
sleepValue=0
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
tSend.txt="event,sleepReached,cardAlarm"
|
||||
//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
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
@@ -1,397 +0,0 @@
|
||||
Page pageStartup
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
vis p0,0
|
||||
recmod=1
|
||||
bauds=115200
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis bSendStartup,0
|
||||
vis frame_ptr,0
|
||||
vis spinner_w,0
|
||||
vis frapic_w,0
|
||||
vis usual_cnt,0
|
||||
vis tMsg2,0
|
||||
vis tMsg3,0
|
||||
vis tVersion,0
|
||||
dim=100
|
||||
|
||||
Postinitialize Event
|
||||
//send messages by clicking button
|
||||
click bSendStartup,1
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Number frame_ptr
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 0
|
||||
|
||||
Number frapic_w
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 1960
|
||||
|
||||
Number spinner_w
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 140
|
||||
|
||||
Number usual_cnt
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 0
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tMsg1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : Waiting for content ...
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tMsg2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : This is taking longer than usual,
|
||||
Max. Text Size : 100
|
||||
|
||||
Text tMsg3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : please check your backend configuration
|
||||
Max. Text Size : 100
|
||||
|
||||
Text tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : newtxt
|
||||
Max. Text Size : 100
|
||||
|
||||
Text tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tVersion
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : 43
|
||||
Max. Text Size : 10
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button bSendStartup
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : startup
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
recmod=1
|
||||
bauds=115200
|
||||
// startup event
|
||||
tSend.txt="event,startup,"+tVersion.txt+",us-l"
|
||||
//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 mSpinner
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sys2=sys2+1
|
||||
sys2%=10
|
||||
//n0.val=sys2
|
||||
if(sys2==9)
|
||||
{
|
||||
page pageTest
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
dim=100
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSpinner
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 80
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
xpic mSpinner.x,mSpinner.y,spinner_w.val,140,frame_ptr.val,0,9 // 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)
|
||||
{
|
||||
usual_cnt.val+=1
|
||||
sys0=usual_cnt.val%5
|
||||
if(sys0==0)
|
||||
{
|
||||
// retry sending startup messages by clicking button
|
||||
click bSendStartup,1
|
||||
}
|
||||
}
|
||||
if(usual_cnt.val==10)
|
||||
{
|
||||
vis tMsg2,1
|
||||
vis tMsg3,1
|
||||
}
|
||||
|
||||
@@ -1,871 +0,0 @@
|
||||
Page screensaver
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
recmod=1
|
||||
bauds=115200
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis p0,0
|
||||
vis tNotifyHead,0
|
||||
vis tNotifyText,0
|
||||
//load gloabl time string from pageIcons
|
||||
//tTime.txt=vaTime.txt
|
||||
spstr pageIcons.vaTime.txt,tTime.txt,"?",0
|
||||
spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
|
||||
if(tAMPM.txt=="")
|
||||
{
|
||||
vis tAMPM,0
|
||||
}
|
||||
tDate.txt=pageIcons.vaDate.txt
|
||||
dim=dimValue
|
||||
vis tSend,0
|
||||
//page open event
|
||||
// clear weather elements, to keep example content in HMI
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 25
|
||||
|
||||
Variable (string) tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (string) tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (int32) vaTap
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) xc1
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) xc2
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) xcR
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) yc1
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) yc2
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) ycR
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Text t10
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : |
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tAMPM
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : PM
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tDate
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : Tuesday, 08. March 2022
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tF1Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tF2Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tF3Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tF4Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 5
|
||||
|
||||
Text tForecast1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast1Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast2Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast3Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast4Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tIcon1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 5
|
||||
|
||||
Text tIcon2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 5
|
||||
|
||||
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
|
||||
|
||||
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 tMainIcon
|
||||
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 tMainText
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
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 tNotifyHead
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 35
|
||||
|
||||
Text tNotifyText
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 35
|
||||
|
||||
Text tTime
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : 21:32
|
||||
Max. Text Size : 15
|
||||
|
||||
Text tTimeAdd
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Timer tm0
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(tc0.val!=0)
|
||||
{
|
||||
xc2.val=tch0
|
||||
yc2.val=tch1
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="wake")
|
||||
{
|
||||
//dim=100
|
||||
click tc0,1
|
||||
}
|
||||
if(tInstruction.txt=="dimmode")
|
||||
{
|
||||
// get value
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
covx tTmp.txt,dimValue,0,0
|
||||
dim=dimValue
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,0,0
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="time")
|
||||
{
|
||||
//get set time to global variable
|
||||
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
|
||||
spstr pageIcons.vaTime.txt,tTime.txt,"?",0
|
||||
spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
|
||||
if(tAMPM.txt=="")
|
||||
{
|
||||
vis tAMPM,0
|
||||
}
|
||||
spstr strCommand.txt,tTimeAdd.txt,"~",2
|
||||
}
|
||||
if(tInstruction.txt=="date")
|
||||
{
|
||||
//get set date to global variable
|
||||
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
|
||||
tDate.txt=pageIcons.vaDate.txt
|
||||
}
|
||||
if(tInstruction.txt=="timeout")
|
||||
{
|
||||
//set timeout to global var
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
covx tTmp.txt,sleepTimeout,0,0
|
||||
}
|
||||
if(tInstruction.txt=="weatherUpdate"&&tNotifyHead.txt==""&&tNotifyText.txt=="")
|
||||
{
|
||||
vis tMainIcon,1
|
||||
vis tMainIconAlt,0
|
||||
vis tMainText,1
|
||||
vis tMainTextAlt,0
|
||||
vis tMRIcon,0
|
||||
vis tMR,0
|
||||
//tMainIcon
|
||||
spstr strCommand.txt,tMainIcon.txt,"~",1
|
||||
tMainIconAlt.txt=tMainIcon.txt
|
||||
//tMainText
|
||||
spstr strCommand.txt,tMainText.txt,"~",2
|
||||
tMainTextAlt.txt=tMainText.txt
|
||||
//tForecast1
|
||||
spstr strCommand.txt,tForecast1.txt,"~",3
|
||||
//tF1Icon
|
||||
spstr strCommand.txt,tF1Icon.txt,"~",4
|
||||
//tForecast1Val
|
||||
spstr strCommand.txt,tForecast1Val.txt,"~",5
|
||||
//tForecast2
|
||||
spstr strCommand.txt,tForecast2.txt,"~",6
|
||||
//tF2Icon
|
||||
spstr strCommand.txt,tF2Icon.txt,"~",7
|
||||
//tForecast2Val
|
||||
spstr strCommand.txt,tForecast2Val.txt,"~",8
|
||||
//tForecast3
|
||||
spstr strCommand.txt,tForecast3.txt,"~",9
|
||||
//tF3Icon
|
||||
spstr strCommand.txt,tF3Icon.txt,"~",10
|
||||
//tForecast3Val
|
||||
spstr strCommand.txt,tForecast3Val.txt,"~",11
|
||||
//tForecast4
|
||||
spstr strCommand.txt,tForecast4.txt,"~",12
|
||||
//tF4Icon
|
||||
spstr strCommand.txt,tF4Icon.txt,"~",13
|
||||
//tForecast4Val
|
||||
spstr strCommand.txt,tForecast4Val.txt,"~",14
|
||||
//alternative layout
|
||||
//tMRIcon
|
||||
spstr strCommand.txt,tMRIcon.txt,"~",15
|
||||
if(tMRIcon.txt!=""&&p0.w!=320)
|
||||
{
|
||||
//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
|
||||
//statusIcon1
|
||||
spstr strCommand.txt,tIcon1.txt,"~",17
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,tIcon1.pco,0,0
|
||||
//statusIcon2
|
||||
spstr strCommand.txt,tIcon2.txt,"~",19
|
||||
spstr strCommand.txt,tTmp.txt,"~",20
|
||||
covx tTmp.txt,tIcon2.pco,0,0
|
||||
}
|
||||
if(tInstruction.txt=="color"&&tNotifyHead.txt==""&&tNotifyText.txt=="")
|
||||
{
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
covx tTmp.txt,tTime.bco,0,0
|
||||
if(tTime.bco!=screensaver.bco)
|
||||
{
|
||||
screensaver.bco=tTime.bco
|
||||
tAMPM.bco=tTime.bco
|
||||
tDate.bco=tTime.bco
|
||||
tMainIcon.bco=tTime.bco
|
||||
tMainText.bco=tTime.bco
|
||||
tMainIconAlt.bco=tTime.bco
|
||||
tMainTextAlt.bco=tTime.bco
|
||||
tMRIcon.bco=tTime.bco
|
||||
tMR.bco=tTime.bco
|
||||
tMRIcon.bco=tTime.bco
|
||||
tIcon1.bco=tTime.bco
|
||||
tIcon2.bco=tTime.bco
|
||||
tForecast1.bco=tTime.bco
|
||||
tForecast1Val.bco=tTime.bco
|
||||
tF1Icon.bco=tTime.bco
|
||||
tForecast2.bco=tTime.bco
|
||||
tForecast2Val.bco=tTime.bco
|
||||
tF2Icon.bco=tTime.bco
|
||||
tForecast3.bco=tTime.bco
|
||||
tForecast3Val.bco=tTime.bco
|
||||
tF3Icon.bco=tTime.bco
|
||||
tForecast4.bco=tTime.bco
|
||||
tForecast4Val.bco=tTime.bco
|
||||
tF4Icon.bco=tTime.bco
|
||||
tTimeAdd.bco=tTime.bco
|
||||
}
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,tTime.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
covx tTmp.txt,tAMPM.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
covx tTmp.txt,tDate.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",5
|
||||
covx tTmp.txt,tMainIcon.pco,0,0
|
||||
tMainIconAlt.pco=tMainIcon.pco
|
||||
spstr strCommand.txt,tTmp.txt,"~",6
|
||||
covx tTmp.txt,tMainText.pco,0,0
|
||||
tMainTextAlt.pco=tMainText.pco
|
||||
spstr strCommand.txt,tTmp.txt,"~",7
|
||||
covx tTmp.txt,tForecast1.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",8
|
||||
covx tTmp.txt,tForecast2.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",9
|
||||
covx tTmp.txt,tForecast3.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",10
|
||||
covx tTmp.txt,tForecast4.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",11
|
||||
covx tTmp.txt,tF1Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,tF2Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",13
|
||||
covx tTmp.txt,tF3Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",14
|
||||
covx tTmp.txt,tF4Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",15
|
||||
covx tTmp.txt,tForecast1Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",16
|
||||
covx tTmp.txt,tForecast2Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",17
|
||||
covx tTmp.txt,tForecast3Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,tForecast4Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",19
|
||||
covx tTmp.txt,t10.bco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",20
|
||||
covx tTmp.txt,tMRIcon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",21
|
||||
covx tTmp.txt,tMR.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",22
|
||||
covx tTmp.txt,tTimeAdd.pco,0,0
|
||||
if(tMRIcon.txt!=""&&p0.w!=320)
|
||||
{
|
||||
tF4Icon.pco=tF3Icon.pco
|
||||
tF3Icon.pco=tF2Icon.pco
|
||||
tF2Icon.pco=tF1Icon.pco
|
||||
tForecast4Val.pco=tForecast3Val.pco
|
||||
tForecast3Val.pco=tForecast2Val.pco
|
||||
tForecast2Val.pco=tForecast1Val.pco
|
||||
tForecast4.pco=tForecast3.pco
|
||||
tForecast3.pco=tForecast2.pco
|
||||
tForecast2.pco=tForecast1.pco
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="notify")
|
||||
{
|
||||
spstr strCommand.txt,tNotifyHead.txt,"~",1
|
||||
spstr strCommand.txt,tNotifyText.txt,"~",2
|
||||
if(tNotifyHead.txt!=""||tNotifyText.txt!="")
|
||||
{
|
||||
vis tNotifyHead,1
|
||||
vis tNotifyText,1
|
||||
}else
|
||||
{
|
||||
vis tNotifyHead,0
|
||||
vis tNotifyText,0
|
||||
}
|
||||
tNotifyHead.bco=tTime.bco
|
||||
tNotifyText.bco=tTime.bco
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,tNotifyHead.pco,0,0
|
||||
}
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,tNotifyText.pco,0,0
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="pageType")
|
||||
{
|
||||
dim=100
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
xc1.val=tch0
|
||||
yc1.val=tch1
|
||||
tm0.en=1
|
||||
if(tNotifyHead.txt!=""||tNotifyText.txt!="")
|
||||
{
|
||||
if(dim!=0)
|
||||
{
|
||||
tNotifyHead.txt=""
|
||||
tNotifyText.txt=""
|
||||
vis tNotifyHead,0
|
||||
vis tNotifyText,0
|
||||
}
|
||||
}
|
||||
dim=dimValueNormal
|
||||
vaTap.val+=1
|
||||
covx vaTap.val,tTmp.txt,0,0
|
||||
tSend.txt="event,buttonPress2,screensaver,bExit,"+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
|
||||
|
||||
Touch Release Event
|
||||
tm0.en=0
|
||||
if(tch0==0)
|
||||
// When this is zero we can interpret that as the real end of the drag event
|
||||
{
|
||||
xcR.val=xc1.val-xc2.val
|
||||
ycR.val=yc1.val-yc2.val
|
||||
// new method
|
||||
// one of the difference values should be low to be a valid direction, in case it has a high value it's not a valid swipe, because it's diagonal
|
||||
// x difference between -125 and 125 (swipe on y-axis)
|
||||
if(xcR.val>-125&&xcR.val<125)
|
||||
{
|
||||
//tStatusNew.txt="x low, -> y"
|
||||
// check if below minimum value (change is negative)
|
||||
if(ycR.val<-80)
|
||||
{
|
||||
//tDirNew.txt="down"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeDown"
|
||||
}else if(ycR.val>80)
|
||||
{
|
||||
//tDirNew.txt="up"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeUp"
|
||||
}else
|
||||
{
|
||||
//tDirNew.txt="invalid"
|
||||
}
|
||||
// y difference between -125 and 125 (swipe on x-axis)
|
||||
}else if(ycR.val>-125&&ycR.val<125)
|
||||
{
|
||||
//tStatusNew.txt="y low, -> x"
|
||||
if(xcR.val<-80)
|
||||
{
|
||||
//tDirNew.txt="right"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeRight"
|
||||
}else if(xcR.val>80)
|
||||
{
|
||||
//tDirNew.txt="left"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeLeft"
|
||||
}else
|
||||
{
|
||||
//tDirNew.txt="invalid"
|
||||
}
|
||||
//diagonal swipe invalid
|
||||
}else
|
||||
{
|
||||
//tStatusNew.txt="invalid"
|
||||
//tDirNew.txt="diagonal"
|
||||
}
|
||||
}
|
||||
//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
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
+++ /dev/fd/62 2022-11-03 17:14:06.344831301 +0000
|
||||
+++ /dev/fd/62 2022-11-03 18:42:47.339776246 +0000
|
||||
+.txt
|
||||
++1,8 @@
|
||||
+pupThermo
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
Program.s
|
||||
//The following code is only run once when power on, and is generally used for global variable definition and power on initialization data
|
||||
int sys0=0,sys1=0,sys2=0 //At present, the definition of global variable only supports 4-byte signed integer (int), and other types of global quantity declaration are not supported. If you want to use string type, you can use variable control in the page to implement
|
||||
int bufferPos=0
|
||||
int recvCrc=0
|
||||
int payloadLength=0
|
||||
int par0=0,par1=0
|
||||
// sleep timeout in s
|
||||
int sleepTimeout=20
|
||||
int sleepValue=0
|
||||
// dim value
|
||||
int dimValue=40
|
||||
int dimValueNormal=100
|
||||
//color vars
|
||||
int defaultFontColor=65535
|
||||
int defaultBcoColor=6371
|
||||
// fix touch offset (Removed for US version)
|
||||
//lcd_dev fffb 0002 0000 0020
|
||||
page pageStartup
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,959 +0,0 @@
|
||||
Page popupFan
|
||||
Attributes
|
||||
ID : 0
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
Width : 320
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
Fill : solid color
|
||||
Back. Color : 6371
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
//get entitiy name
|
||||
tEntity.txt=pageIcons.tTmp1.txt
|
||||
//get entity id
|
||||
entn.txt=pageIcons.tTmp2.txt
|
||||
tIcon1.txt=pageIcons.tTmp3.txt
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tTmp,0
|
||||
vis tInstruction,0
|
||||
vis tId,0
|
||||
//page open event
|
||||
// event,pageOpenDetail,typeOfPage,tEntityName
|
||||
// craft command
|
||||
tSend.txt="event,pageOpenDetail,popupFan,"+entn.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
|
||||
vis hSpeed,0
|
||||
popupFan.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<24;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
if(b[sys0].type==53&&defaultBcoColor==0)
|
||||
{
|
||||
b[sys0].pic=10
|
||||
b[sys0].pic2=11
|
||||
}
|
||||
}
|
||||
if(defaultBcoColor==0)
|
||||
{
|
||||
hSpeed.pic=14
|
||||
hSpeed.pic1=13
|
||||
hSpeed.pic2=15
|
||||
}
|
||||
|
||||
Variable (string) entn
|
||||
Attributes
|
||||
ID : 15
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (int32) mode
|
||||
Attributes
|
||||
ID : 16
|
||||
Scope: local
|
||||
Value: 1
|
||||
|
||||
Variable (int32) mode_temp
|
||||
Attributes
|
||||
ID : 17
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
ID : 12
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 500
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
ID : 26
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) vaModeCur
|
||||
Attributes
|
||||
ID : 23
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (string) vaModeList
|
||||
Attributes
|
||||
ID : 24
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (int32) vaModePos
|
||||
Attributes
|
||||
ID : 25
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Text t1
|
||||
Attributes
|
||||
ID : 5
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 15
|
||||
y coordinate : 142
|
||||
Width : 211
|
||||
Height : 30
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : left
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 50
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tEntity
|
||||
Attributes
|
||||
ID : 2
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 63
|
||||
y coordinate : 21
|
||||
Width : 192
|
||||
Height : 30
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : left
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tIcon1
|
||||
Attributes
|
||||
ID : 3
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 11
|
||||
y coordinate : 21
|
||||
Width : 45
|
||||
Height : 30
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 1
|
||||
Back. Color : 6371
|
||||
Font Color : 17299
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
ID : 14
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 90
|
||||
y coordinate : 450
|
||||
Width : 100
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
ID : 13
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 450
|
||||
Width : 100
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tTmp
|
||||
Attributes
|
||||
ID : 8
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 272
|
||||
y coordinate : 447
|
||||
Width : 34
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 80
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
ID : 1
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 0
|
||||
Width : 319
|
||||
Height : 479
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Picture ID : 0
|
||||
|
||||
Slider hSpeed
|
||||
Attributes
|
||||
ID : 6
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 16
|
||||
y coordinate : 177
|
||||
Width : 250
|
||||
Height : 44
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Direction : horizontal
|
||||
Fill : image
|
||||
Cursor width : auto
|
||||
Cursor height : 255
|
||||
Back. Picture ID : 5
|
||||
Slided Back. Picture ID : 4
|
||||
Position : 50
|
||||
Upper range limit : 100
|
||||
Lower range limit : 0
|
||||
|
||||
Events
|
||||
Touch Release Event
|
||||
tmCooldown.en=1
|
||||
tmCooldown.tim=2500
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"+entn.txt+",number-set,"
|
||||
covx hSpeed.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 b0
|
||||
Attributes
|
||||
ID : 4
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 262
|
||||
y coordinate : 11
|
||||
Width : 50
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Font ID : 1
|
||||
Back. Color : 6371
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 14823
|
||||
Font Color (Unpressed) : 65535
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text : î
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tSend.txt="event,buttonPress2,popupLight,bExit"
|
||||
//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 bMode1
|
||||
Attributes
|
||||
ID : 19
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 29
|
||||
y coordinate : 256
|
||||
Width : 120
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 14823
|
||||
Font Color (Unpressed) : 65535
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-preset_modes,"+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 bMode2
|
||||
Attributes
|
||||
ID : 20
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 169
|
||||
y coordinate : 255
|
||||
Width : 120
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 14823
|
||||
Font Color (Unpressed) : 65535
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-preset_modes,"+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 bMode3
|
||||
Attributes
|
||||
ID : 21
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 29
|
||||
y coordinate : 330
|
||||
Width : 120
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 14823
|
||||
Font Color (Unpressed) : 65535
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-preset_modes,"+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 bModeNext
|
||||
Attributes
|
||||
ID : 22
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 208
|
||||
y coordinate : 330
|
||||
Width : 50
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Font ID : 3
|
||||
Back. Color : 6371
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 14823
|
||||
Font Color (Unpressed) : 50712
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 5
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//if(bMode3.txt=="")
|
||||
spstr vaModeList.txt,tTmp.txt,"?",vaModePos.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos.val=0
|
||||
spstr vaModeList.txt,bMode1.txt,"?",vaModePos.val
|
||||
spstr vaModeList.txt,bMode2.txt,"?",vaModePos.val+1
|
||||
spstr vaModeList.txt,bMode3.txt,"?",vaModePos.val+2
|
||||
}
|
||||
spstr vaModeList.txt,bMode1.txt,"?",vaModePos.val
|
||||
spstr vaModeList.txt,bMode2.txt,"?",vaModePos.val+1
|
||||
spstr vaModeList.txt,bMode3.txt,"?",vaModePos.val+2
|
||||
vaModePos.val+=3
|
||||
spstr vaModeList.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis bModeNext,0
|
||||
}else
|
||||
{
|
||||
vis bModeNext,1
|
||||
}
|
||||
bMode1.pco=defaultFontColor
|
||||
bMode2.pco=defaultFontColor
|
||||
bMode3.pco=defaultFontColor
|
||||
if(bMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode1.pco=1374
|
||||
}
|
||||
if(bMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode2.pco=1374
|
||||
}
|
||||
if(bMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode3.pco=1374
|
||||
}
|
||||
|
||||
Dual-state Button btOnOff1
|
||||
Attributes
|
||||
ID : 7
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 260
|
||||
y coordinate : 117
|
||||
Width : 50
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : image
|
||||
Font ID : 0
|
||||
Background Picture ID (Unpressed) : 1
|
||||
Back. Picture ID (Pressed) : 2
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"+entn.txt+","+"OnOff,"
|
||||
covx btOnOff1.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
|
||||
|
||||
Timer tmCooldown
|
||||
Attributes
|
||||
ID : 18
|
||||
Scope : local
|
||||
Period (ms): 100
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
tmCooldown.en=0
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
ID : 11
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
if(tInstruction.txt=="entityUpdateDetail"&&entn.txt==tTmp.txt)
|
||||
{
|
||||
// change icon
|
||||
//spstr strCommand.txt,tIcon1.txt,"~",2
|
||||
vis tIcon1,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
covx tTmp.txt,sys0,0,0
|
||||
tIcon1.pco=sys0
|
||||
// get Button State
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
covx tTmp.txt,sys0,0,0
|
||||
btOnOff1.val=sys0
|
||||
// get Speed value
|
||||
spstr strCommand.txt,tTmp.txt,"~",5
|
||||
if(tTmp.txt=="disable")
|
||||
{
|
||||
vis t1,0
|
||||
vis hSpeed,0
|
||||
}else
|
||||
{
|
||||
vis t1,1
|
||||
vis hSpeed,1
|
||||
covx tTmp.txt,sys0,0,0
|
||||
if(tmCooldown.en==0)
|
||||
{
|
||||
hSpeed.val=sys0
|
||||
}
|
||||
}
|
||||
// set hSpeed maxValue
|
||||
spstr strCommand.txt,tTmp.txt,"~",6
|
||||
covx tTmp.txt,hSpeed.maxval,0,0
|
||||
// set t1 Speed (Localization)
|
||||
spstr strCommand.txt,t1.txt,"~",7
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur.txt,"~",8
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList.txt,"~",9
|
||||
if(vaModeList.txt=="")
|
||||
{
|
||||
vis bMode1,0
|
||||
vis bMode2,0
|
||||
vis bMode3,0
|
||||
vis bModeNext,0
|
||||
}
|
||||
if(bMode1.txt=="")
|
||||
{
|
||||
click bModeNext,1
|
||||
click bModeNext,0
|
||||
}
|
||||
bMode1.pco=defaultFontColor
|
||||
bMode2.pco=defaultFontColor
|
||||
bMode3.pco=defaultFontColor
|
||||
if(bMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode1.pco=1374
|
||||
}
|
||||
if(bMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode2.pco=1374
|
||||
}
|
||||
if(bMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode3.pco=1374
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSleep
|
||||
Attributes
|
||||
ID : 10
|
||||
Scope : local
|
||||
Period (ms): 1000
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(sleepTimeout!=0)
|
||||
{
|
||||
sleepValue+=1
|
||||
if(sleepTimeout<=sleepValue)
|
||||
{
|
||||
sleepValue=0
|
||||
click b0,1
|
||||
click b0,0
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
ID : 9
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,693 +0,0 @@
|
||||
Page pageStartup
|
||||
Attributes
|
||||
ID : 0
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
Width : 320
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
Fill : solid color
|
||||
Back. Color : 6371
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
vis p0,0
|
||||
recmod=1
|
||||
bauds=115200
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis bSendStartup,0
|
||||
vis frame_ptr,0
|
||||
vis spinner_w,0
|
||||
vis frapic_w,0
|
||||
vis usual_cnt,0
|
||||
vis tMsg2,0
|
||||
vis tMsg3,0
|
||||
vis tVersion,0
|
||||
dim=100
|
||||
|
||||
Postinitialize Event
|
||||
//send messages by clicking button
|
||||
click bSendStartup,1
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
ID : 5
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Number frame_ptr
|
||||
Attributes
|
||||
ID : 10
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 6
|
||||
y coordinate : 78
|
||||
Width : 100
|
||||
Height : 30
|
||||
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
|
||||
|
||||
Number frapic_w
|
||||
Attributes
|
||||
ID : 12
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 6
|
||||
y coordinate : 144
|
||||
Width : 100
|
||||
Height : 30
|
||||
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 : 1960
|
||||
Significant digits shown : all
|
||||
Format : decimal
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Number spinner_w
|
||||
Attributes
|
||||
ID : 11
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 6
|
||||
y coordinate : 111
|
||||
Width : 100
|
||||
Height : 30
|
||||
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 : 140
|
||||
Significant digits shown : all
|
||||
Format : decimal
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Number usual_cnt
|
||||
Attributes
|
||||
ID : 15
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 7
|
||||
y coordinate : 178
|
||||
Width : 100
|
||||
Height : 30
|
||||
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 tId
|
||||
Attributes
|
||||
ID : 7
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 25
|
||||
Width : 125
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
ID : 6
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 163
|
||||
y coordinate : 0
|
||||
Width : 119
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tMsg1
|
||||
Attributes
|
||||
ID : 8
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 399
|
||||
Width : 320
|
||||
Height : 30
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 1
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text : Waiting for content ...
|
||||
Max. Text Size : 40
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tMsg2
|
||||
Attributes
|
||||
ID : 13
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 432
|
||||
Width : 320
|
||||
Height : 25
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text : This is taking longer than usual,
|
||||
Max. Text Size : 100
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tMsg3
|
||||
Attributes
|
||||
ID : 14
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 454
|
||||
Width : 320
|
||||
Height : 25
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text : pls check your backend configuration
|
||||
Max. Text Size : 100
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tSend
|
||||
Attributes
|
||||
ID : 2
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 0
|
||||
Width : 230
|
||||
Height : 23
|
||||
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
|
||||
Input Type : character
|
||||
Text : newtxt
|
||||
Max. Text Size : 100
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tTmp
|
||||
Attributes
|
||||
ID : 3
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 127
|
||||
y coordinate : 24
|
||||
Width : 34
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tVersion
|
||||
Attributes
|
||||
ID : 18
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 240
|
||||
y coordinate : 138
|
||||
Width : 78
|
||||
Height : 72
|
||||
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
|
||||
Input Type : character
|
||||
Text : 43
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
ID : 1
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 0
|
||||
Width : 319
|
||||
Height : 479
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Picture ID : 0
|
||||
|
||||
Button bSendStartup
|
||||
Attributes
|
||||
ID : 17
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 254
|
||||
y coordinate : 87
|
||||
Width : 63
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : 3D auto
|
||||
Font ID : 0
|
||||
Back. Color : 50712
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 1024
|
||||
Font Color (Unpressed) : 0
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text : startup
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
recmod=1
|
||||
bauds=115200
|
||||
// startup event
|
||||
tSend.txt="event,startup,"+tVersion.txt+",us-p"
|
||||
//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 mSpinner
|
||||
Attributes
|
||||
ID : 16
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 89
|
||||
y coordinate : 226
|
||||
Width : 140
|
||||
Height : 140
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sys2=sys2+1
|
||||
sys2%=10
|
||||
//n0.val=sys2
|
||||
if(sys2==9)
|
||||
{
|
||||
page pageTest
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
ID : 4
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
dim=100
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSpinner
|
||||
Attributes
|
||||
ID : 9
|
||||
Scope : local
|
||||
Period (ms): 80
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
xpic mSpinner.x,mSpinner.y,spinner_w.val,140,frame_ptr.val,0,9 // 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)
|
||||
{
|
||||
usual_cnt.val+=1
|
||||
sys0=usual_cnt.val%5
|
||||
if(sys0==0)
|
||||
{
|
||||
// retry sending startup messages by clicking button
|
||||
click bSendStartup,1
|
||||
}
|
||||
}
|
||||
if(usual_cnt.val==10)
|
||||
{
|
||||
vis tMsg2,1
|
||||
vis tMsg3,1
|
||||
}
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
Program.s
|
||||
0 Component(s)
|
||||
12 Line(s) of event code
|
||||
12 Unique line(s) of event code
|
||||
p0
|
||||
45 Component(s)
|
||||
389 Line(s) of event code
|
||||
288 Unique line(s) of event code
|
||||
b0
|
||||
27 Component(s)
|
||||
347 Line(s) of event code
|
||||
202 Unique line(s) of event code
|
||||
bNext
|
||||
34 Component(s)
|
||||
406 Line(s) of event code
|
||||
216 Unique line(s) of event code
|
||||
arm1
|
||||
40 Component(s)
|
||||
439 Line(s) of event code
|
||||
261 Unique line(s) of event code
|
||||
bSendStartup
|
||||
19 Component(s)
|
||||
172 Line(s) of event code
|
||||
125 Unique line(s) of event code
|
||||
bEntity1
|
||||
42 Component(s)
|
||||
490 Line(s) of event code
|
||||
286 Unique line(s) of event code
|
||||
bDown2
|
||||
53 Component(s)
|
||||
608 Line(s) of event code
|
||||
316 Unique line(s) of event code
|
||||
bDown1
|
||||
77 Component(s)
|
||||
1391 Line(s) of event code
|
||||
617 Unique line(s) of event code
|
||||
|
||||
Total
|
||||
17 Page(s)
|
||||
337 Component(s)
|
||||
4254 Line(s) of event code
|
||||
1291 Unique line(s) of event code
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,19 +0,0 @@
|
||||
Program.s
|
||||
//The following code is only run once when power on, and is generally used for global variable definition and power on initialization data
|
||||
int sys0=0,sys1=0,sys2=0 //At present, the definition of global variable only supports 4-byte signed integer (int), and other types of global quantity declaration are not supported. If you want to use string type, you can use variable control in the page to implement
|
||||
int bufferPos=0
|
||||
int recvCrc=0
|
||||
int payloadLength=0
|
||||
int par0=0,par1=0
|
||||
// sleep timeout in s
|
||||
int sleepTimeout=20
|
||||
int sleepValue=0
|
||||
// dim value
|
||||
int dimValue=40
|
||||
int dimValueNormal=100
|
||||
//color vars
|
||||
int defaultFontColor=65535
|
||||
int defaultBcoColor=6371
|
||||
// fix touch offset
|
||||
lcd_dev fffb 0002 0000 0020
|
||||
page pageStartup
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,693 +0,0 @@
|
||||
Page pageStartup
|
||||
Attributes
|
||||
ID : 0
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
Width : 480
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
Fill : solid color
|
||||
Back. Color : 6371
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
vis p0,0
|
||||
recmod=1
|
||||
bauds=115200
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis bSendStartup,0
|
||||
vis frame_ptr,0
|
||||
vis spinner_w,0
|
||||
vis frapic_w,0
|
||||
vis usual_cnt,0
|
||||
vis tMsg2,0
|
||||
vis tMsg3,0
|
||||
vis tVersion,0
|
||||
dim=100
|
||||
|
||||
Postinitialize Event
|
||||
//send messages by clicking button
|
||||
click bSendStartup,1
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
ID : 5
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Number frame_ptr
|
||||
Attributes
|
||||
ID : 10
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 11
|
||||
y coordinate : 34
|
||||
Width : 100
|
||||
Height : 30
|
||||
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
|
||||
|
||||
Number frapic_w
|
||||
Attributes
|
||||
ID : 12
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 11
|
||||
y coordinate : 100
|
||||
Width : 100
|
||||
Height : 30
|
||||
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 : 1960
|
||||
Significant digits shown : all
|
||||
Format : decimal
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Number spinner_w
|
||||
Attributes
|
||||
ID : 11
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 11
|
||||
y coordinate : 67
|
||||
Width : 100
|
||||
Height : 30
|
||||
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 : 140
|
||||
Significant digits shown : all
|
||||
Format : decimal
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Number usual_cnt
|
||||
Attributes
|
||||
ID : 15
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 12
|
||||
y coordinate : 134
|
||||
Width : 100
|
||||
Height : 30
|
||||
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 tId
|
||||
Attributes
|
||||
ID : 7
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 282
|
||||
y coordinate : 0
|
||||
Width : 125
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
ID : 6
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 163
|
||||
y coordinate : 0
|
||||
Width : 119
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tMsg1
|
||||
Attributes
|
||||
ID : 8
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 42
|
||||
y coordinate : 223
|
||||
Width : 375
|
||||
Height : 30
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 1
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text : Waiting for content ...
|
||||
Max. Text Size : 40
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tMsg2
|
||||
Attributes
|
||||
ID : 13
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 25
|
||||
y coordinate : 256
|
||||
Width : 408
|
||||
Height : 25
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text : This is taking longer than usual,
|
||||
Max. Text Size : 100
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tMsg3
|
||||
Attributes
|
||||
ID : 14
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 25
|
||||
y coordinate : 278
|
||||
Width : 408
|
||||
Height : 25
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : flat
|
||||
Associated Keyboard : none
|
||||
Font ID : 0
|
||||
Back. Color : 6371
|
||||
Font Color : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
Input Type : character
|
||||
Text : please check your backend configuration
|
||||
Max. Text Size : 100
|
||||
Word wrap : enabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tSend
|
||||
Attributes
|
||||
ID : 2
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 0
|
||||
Width : 230
|
||||
Height : 23
|
||||
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
|
||||
Input Type : character
|
||||
Text : newtxt
|
||||
Max. Text Size : 100
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tTmp
|
||||
Attributes
|
||||
ID : 3
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 408
|
||||
y coordinate : 0
|
||||
Width : 34
|
||||
Height : 30
|
||||
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
|
||||
Input Type : character
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Text tVersion
|
||||
Attributes
|
||||
ID : 18
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 402
|
||||
y coordinate : 101
|
||||
Width : 78
|
||||
Height : 72
|
||||
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
|
||||
Input Type : character
|
||||
Text : 43
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
ID : 1
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 0
|
||||
y coordinate : 0
|
||||
Width : 480
|
||||
Height : 320
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Picture ID : 0
|
||||
|
||||
Button bSendStartup
|
||||
Attributes
|
||||
ID : 17
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 380
|
||||
y coordinate : 39
|
||||
Width : 63
|
||||
Height : 50
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
Fill : solid color
|
||||
Style : 3D auto
|
||||
Font ID : 0
|
||||
Back. Color : 50712
|
||||
Back. Picture ID (Pressed) : 65535
|
||||
Back. Color (Pressed) : 1024
|
||||
Font Color (Unpressed) : 0
|
||||
Font Color (Pressed) : 65535
|
||||
Horizontal Alignment : center
|
||||
Vertical Alignment : center
|
||||
State : unpressed
|
||||
Text : startup
|
||||
Max. Text Size : 10
|
||||
Word wrap : disabled
|
||||
Horizontal Spacing : 0
|
||||
Vertical Spacing : 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
recmod=1
|
||||
bauds=115200
|
||||
// startup event
|
||||
tSend.txt="event,startup,"+tVersion.txt+",eu"
|
||||
//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 mSpinner
|
||||
Attributes
|
||||
ID : 16
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Opacity : 127
|
||||
x coordinate : 154
|
||||
y coordinate : 49
|
||||
Width : 140
|
||||
Height : 140
|
||||
Effect : load
|
||||
Effect Priority : 0
|
||||
Effect Time : 300
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sys2=sys2+1
|
||||
sys2%=10
|
||||
//n0.val=sys2
|
||||
if(sys2==9)
|
||||
{
|
||||
page pageTest
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
ID : 4
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
dim=100
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSpinner
|
||||
Attributes
|
||||
ID : 9
|
||||
Scope : local
|
||||
Period (ms): 80
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
xpic mSpinner.x,mSpinner.y,spinner_w.val,140,frame_ptr.val,0,9 // 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)
|
||||
{
|
||||
usual_cnt.val+=1
|
||||
sys0=usual_cnt.val%5
|
||||
if(sys0==0)
|
||||
{
|
||||
// retry sending startup messages by clicking button
|
||||
click bSendStartup,1
|
||||
}
|
||||
}
|
||||
if(usual_cnt.val==10)
|
||||
{
|
||||
vis tMsg2,1
|
||||
vis tMsg3,1
|
||||
}
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
Program.s
|
||||
0 Component(s)
|
||||
13 Line(s) of event code
|
||||
13 Unique line(s) of event code
|
||||
p0
|
||||
45 Component(s)
|
||||
389 Line(s) of event code
|
||||
288 Unique line(s) of event code
|
||||
b0
|
||||
44 Component(s)
|
||||
515 Line(s) of event code
|
||||
272 Unique line(s) of event code
|
||||
bSendStartup
|
||||
19 Component(s)
|
||||
172 Line(s) of event code
|
||||
125 Unique line(s) of event code
|
||||
bNext
|
||||
34 Component(s)
|
||||
406 Line(s) of event code
|
||||
216 Unique line(s) of event code
|
||||
bDown1
|
||||
65 Component(s)
|
||||
1165 Line(s) of event code
|
||||
530 Unique line(s) of event code
|
||||
bEntity1
|
||||
42 Component(s)
|
||||
490 Line(s) of event code
|
||||
286 Unique line(s) of event code
|
||||
arm1
|
||||
40 Component(s)
|
||||
439 Line(s) of event code
|
||||
261 Unique line(s) of event code
|
||||
bDown2
|
||||
53 Component(s)
|
||||
608 Line(s) of event code
|
||||
316 Unique line(s) of event code
|
||||
|
||||
Total
|
||||
17 Page(s)
|
||||
342 Component(s)
|
||||
4197 Line(s) of event code
|
||||
1299 Unique line(s) of event code
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,19 +0,0 @@
|
||||
Program.s
|
||||
//The following code is only run once when power on, and is generally used for global variable definition and power on initialization data
|
||||
int sys0=0,sys1=0,sys2=0 //At present, the definition of global variable only supports 4-byte signed integer (int), and other types of global quantity declaration are not supported. If you want to use string type, you can use variable control in the page to implement
|
||||
int bufferPos=0
|
||||
int recvCrc=0
|
||||
int payloadLength=0
|
||||
int par0=0,par1=0
|
||||
// sleep timeout in s
|
||||
int sleepTimeout=20
|
||||
int sleepValue=0
|
||||
// dim value
|
||||
int dimValue=40
|
||||
int dimValueNormal=100
|
||||
//color vars
|
||||
int defaultFontColor=65535
|
||||
int defaultBcoColor=6371
|
||||
// fix touch offset
|
||||
lcd_dev fffb 0002 0000 0020
|
||||
page pageStartup
|
||||
@@ -1,926 +0,0 @@
|
||||
Page cardAlarm
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis arm1,0
|
||||
vis arm2,0
|
||||
vis arm3,0
|
||||
vis arm4,0
|
||||
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 b11,0
|
||||
vis tCode,0
|
||||
vis bPrev,0
|
||||
vis bNext,0
|
||||
cardAlarm.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<40;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
}
|
||||
if(defaultBcoColor==0)
|
||||
{
|
||||
tCode.bco=6371
|
||||
tCode.pco=40179
|
||||
}
|
||||
if(defaultBcoColor==6371)
|
||||
{
|
||||
tCode.bco=10565
|
||||
tCode.pco=40179
|
||||
}
|
||||
|
||||
Variable (string) entn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) va1
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) va2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) va3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) va4
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) vaAddBtn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Text tCode
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tIcon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tTmp
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button arm1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va1.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button arm2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va2.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button arm3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va3.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button arm4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+=va4.txt+","
|
||||
tSend.txt+=tCode.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
|
||||
tCode.txt=""
|
||||
|
||||
Button b0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 1
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"1"
|
||||
|
||||
Button b1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 2
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"2"
|
||||
|
||||
Button b10
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 0
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"0"
|
||||
|
||||
Button b11
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : CLR
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=""
|
||||
|
||||
Button b2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 3
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"3"
|
||||
|
||||
Button b3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 4
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"4"
|
||||
|
||||
Button b4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 5
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"5"
|
||||
|
||||
Button b5
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 6
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"6"
|
||||
|
||||
Button b6
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 7
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"7"
|
||||
|
||||
Button b7
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 8
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"8"
|
||||
|
||||
Button b8
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : 9
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
tCode.txt=tCode.txt+"9"
|
||||
|
||||
Button b9
|
||||
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
|
||||
// event,buttonPress2,entn,arm1,tCode
|
||||
tSend.txt="event,buttonPress2,"
|
||||
if(vaAddBtn.txt!="")
|
||||
{
|
||||
tSend.txt+=vaAddBtn.txt+",button"
|
||||
}else
|
||||
{
|
||||
tSend.txt+=entn.txt+",opnSensorNotify"
|
||||
}
|
||||
//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
|
||||
tCode.txt=""
|
||||
|
||||
Button bNext
|
||||
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,cardAlarm,"
|
||||
if(bPrev.txt=="î")
|
||||
{
|
||||
tSend.txt+="bHome"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bNext"
|
||||
}
|
||||
//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 bPrev
|
||||
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,cardAlarm,"
|
||||
if(bPrev.txt=="î¶")
|
||||
{
|
||||
tSend.txt+="bUp"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bPrev"
|
||||
}
|
||||
//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 mSwipeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bNext,1
|
||||
|
||||
Hotspot mSwipePrev
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Hotspot mSwipeUp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Timer tmFlash
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 600
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(tIcon.isbr==1)
|
||||
{
|
||||
tIcon.isbr=0
|
||||
vis tIcon,0
|
||||
}else
|
||||
{
|
||||
tIcon.isbr=1
|
||||
vis tIcon,1
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="entityUpd")
|
||||
{
|
||||
//entn
|
||||
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
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,1
|
||||
tsw mSwipeUp,0
|
||||
bPrev.txt="î°"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,1
|
||||
bPrev.txt="î¶"
|
||||
}
|
||||
spstr tId.txt,tTmp.txt,"|",1
|
||||
if(tTmp.txt=="0")
|
||||
{
|
||||
vis bNext,0
|
||||
tsw mSwipeNext,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bNext,1
|
||||
tsw mSwipeNext,1
|
||||
bNext.txt="î³"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bNext,1
|
||||
bNext.txt="î"
|
||||
}
|
||||
//text arm1
|
||||
spstr strCommand.txt,arm1.txt,"~",3
|
||||
if(arm1.txt!="")
|
||||
{
|
||||
vis arm1,1
|
||||
}
|
||||
//id arm1
|
||||
spstr strCommand.txt,va1.txt,"~",4
|
||||
//text arm2
|
||||
spstr strCommand.txt,arm2.txt,"~",5
|
||||
if(arm2.txt!="")
|
||||
{
|
||||
vis arm2,1
|
||||
}
|
||||
//id arm2
|
||||
spstr strCommand.txt,va2.txt,"~",6
|
||||
//text arm3
|
||||
spstr strCommand.txt,arm3.txt,"~",7
|
||||
if(arm3.txt!="")
|
||||
{
|
||||
vis arm3,1
|
||||
}
|
||||
//id arm3
|
||||
spstr strCommand.txt,va3.txt,"~",8
|
||||
//text arm4
|
||||
spstr strCommand.txt,arm4.txt,"~",9
|
||||
if(arm4.txt!="")
|
||||
{
|
||||
vis arm4,1
|
||||
}
|
||||
//id arm4
|
||||
spstr strCommand.txt,va4.txt,"~",10
|
||||
//icon
|
||||
spstr strCommand.txt,tIcon.txt,"~",11
|
||||
//icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,sys0,0,0
|
||||
tIcon.pco=sys0
|
||||
//numpad status
|
||||
spstr strCommand.txt,tTmp.txt,"~",13
|
||||
if(tTmp.txt!="disable")
|
||||
{
|
||||
vis b0,1
|
||||
vis b1,1
|
||||
vis b2,1
|
||||
vis b3,1
|
||||
vis b4,1
|
||||
vis b5,1
|
||||
vis b6,1
|
||||
vis b7,1
|
||||
vis b8,1
|
||||
vis b9,1
|
||||
vis b10,1
|
||||
vis b11,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 b11,0
|
||||
vis tCode,0
|
||||
}
|
||||
//flashing status
|
||||
spstr strCommand.txt,tTmp.txt,"~",14
|
||||
if(tTmp.txt=="enable")
|
||||
{
|
||||
tmFlash.en=1
|
||||
}else
|
||||
{
|
||||
tmFlash.en=0
|
||||
}
|
||||
// extra button
|
||||
spstr strCommand.txt,b9.txt,"~",15
|
||||
if(b9.txt!="")
|
||||
{
|
||||
vis b9,1
|
||||
spstr strCommand.txt,tTmp.txt,"~",16
|
||||
covx tTmp.txt,b9.pco,0,0
|
||||
spstr strCommand.txt,vaAddBtn.txt,"~",17
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
sleepValue=0
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
tSend.txt="event,sleepReached,cardAlarm"
|
||||
//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
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
@@ -1,989 +0,0 @@
|
||||
Page popupThermo
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
//get entitiy name
|
||||
tEntity.txt=pageIcons.tTmp1.txt
|
||||
//get entity id
|
||||
entn.txt=pageIcons.tTmp2.txt
|
||||
tIcon1.txt=pageIcons.tTmp3.txt
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tTmp,0
|
||||
vis tInstruction,0
|
||||
vis tId,0
|
||||
vis bModeNext,0
|
||||
vis cModeNext,0
|
||||
vis dModeNext,0
|
||||
//page open event
|
||||
// event,pageOpenDetail,typeOfPage,tEntityName
|
||||
// craft command
|
||||
tSend.txt="event,pageOpenDetail,popupThermo,"+entn.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
|
||||
popupThermo.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<43;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
if(b[sys0].type==53&&defaultBcoColor==0)
|
||||
{
|
||||
b[sys0].pic=10
|
||||
b[sys0].pic2=11
|
||||
}
|
||||
}
|
||||
|
||||
Variable (string) entn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (int32) mode
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 1
|
||||
|
||||
Variable (int32) mode_temp
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 500
|
||||
|
||||
Variable (string) tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) vaModeCur
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 40
|
||||
|
||||
Variable (string) vaModeCur2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 40
|
||||
|
||||
Variable (string) vaModeCur3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 40
|
||||
|
||||
Variable (string) vaModeList
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (string) vaModeList2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (string) vaModeList3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (int32) vaModePos
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) vaModePos2
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) vaModePos3
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (string) vaType
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) vaType2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Variable (string) vaType3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 20
|
||||
|
||||
Text heading1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text heading2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text heading3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text tEntity
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 25
|
||||
|
||||
Text tIcon1
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button b0
|
||||
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,popupLight,bExit"
|
||||
//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 bMode1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType.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 bMode2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType.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 bMode3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType.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 bModeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 3
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//if(bMode3.txt=="")
|
||||
spstr vaModeList.txt,tTmp.txt,"?",vaModePos.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos.val=0
|
||||
spstr vaModeList.txt,bMode1.txt,"?",vaModePos.val
|
||||
spstr vaModeList.txt,bMode2.txt,"?",vaModePos.val+1
|
||||
spstr vaModeList.txt,bMode3.txt,"?",vaModePos.val+2
|
||||
}
|
||||
spstr vaModeList.txt,bMode1.txt,"?",vaModePos.val
|
||||
spstr vaModeList.txt,bMode2.txt,"?",vaModePos.val+1
|
||||
spstr vaModeList.txt,bMode3.txt,"?",vaModePos.val+2
|
||||
vaModePos.val+=3
|
||||
spstr vaModeList.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis bModeNext,0
|
||||
}else
|
||||
{
|
||||
vis bModeNext,1
|
||||
}
|
||||
bMode1.pco=defaultFontColor
|
||||
bMode2.pco=defaultFontColor
|
||||
bMode3.pco=defaultFontColor
|
||||
if(bMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode1.pco=1374
|
||||
}
|
||||
if(bMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode2.pco=1374
|
||||
}
|
||||
if(bMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode3.pco=1374
|
||||
}
|
||||
|
||||
Button cMode1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos2.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType2.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 cMode2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos2.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType2.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 cMode3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos2.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType2.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 cModeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 3
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
spstr vaModeList2.txt,tTmp.txt,"?",vaModePos2.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos2.val=0
|
||||
spstr vaModeList2.txt,cMode1.txt,"?",vaModePos2.val
|
||||
spstr vaModeList2.txt,cMode2.txt,"?",vaModePos2.val+1
|
||||
spstr vaModeList2.txt,cMode3.txt,"?",vaModePos2.val+2
|
||||
}
|
||||
spstr vaModeList2.txt,cMode1.txt,"?",vaModePos2.val
|
||||
spstr vaModeList2.txt,cMode2.txt,"?",vaModePos2.val+1
|
||||
spstr vaModeList2.txt,cMode3.txt,"?",vaModePos2.val+2
|
||||
vaModePos2.val+=3
|
||||
spstr vaModeList2.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis cModeNext,0
|
||||
}else
|
||||
{
|
||||
vis cModeNext,1
|
||||
}
|
||||
cMode1.pco=defaultFontColor
|
||||
cMode2.pco=defaultFontColor
|
||||
cMode3.pco=defaultFontColor
|
||||
if(cMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
cMode1.pco=1374
|
||||
}
|
||||
if(cMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
cMode2.pco=1374
|
||||
}
|
||||
if(cMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
cMode3.pco=1374
|
||||
}
|
||||
|
||||
Button dMode1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos3.val-3
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType3.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 dMode2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos3.val-2
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType3.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 dMode3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
sys2=vaModePos3.val-1
|
||||
covx sys2,tTmp.txt,0,0
|
||||
tSend.txt+="mode-"+vaType3.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 dModeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : î´
|
||||
Max. Text Size : 3
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
spstr vaModeList3.txt,tTmp.txt,"?",vaModePos3.val
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vaModePos3.val=0
|
||||
spstr vaModeList3.txt,dMode1.txt,"?",vaModePos3.val
|
||||
spstr vaModeList3.txt,dMode2.txt,"?",vaModePos3.val+1
|
||||
spstr vaModeList3.txt,dMode3.txt,"?",vaModePos3.val+2
|
||||
}
|
||||
spstr vaModeList3.txt,dMode1.txt,"?",vaModePos3.val
|
||||
spstr vaModeList3.txt,dMode2.txt,"?",vaModePos3.val+1
|
||||
spstr vaModeList3.txt,dMode3.txt,"?",vaModePos3.val+2
|
||||
vaModePos3.val+=3
|
||||
spstr vaModeList3.txt,tTmp.txt,"?",3
|
||||
if(tTmp.txt=="")
|
||||
{
|
||||
vis dModeNext,0
|
||||
}else
|
||||
{
|
||||
vis dModeNext,1
|
||||
}
|
||||
dMode1.pco=defaultFontColor
|
||||
dMode2.pco=defaultFontColor
|
||||
dMode3.pco=defaultFontColor
|
||||
if(dMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
dMode1.pco=1374
|
||||
}
|
||||
if(dMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
dMode2.pco=1374
|
||||
}
|
||||
if(dMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
dMode3.pco=1374
|
||||
}
|
||||
|
||||
Timer tmCooldown
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 100
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
tmCooldown.en=0
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
if(tInstruction.txt=="entityUpdateDetail"&&entn.txt==tTmp.txt)
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,tIcon1.txt,"~",2
|
||||
vis tIcon1,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
covx tTmp.txt,sys0,0,0
|
||||
tIcon1.pco=sys0
|
||||
//mode 1 heading
|
||||
spstr strCommand.txt,heading1.txt,"~",4
|
||||
//mode 1 type
|
||||
spstr strCommand.txt,vaType.txt,"~",5
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur.txt,"~",6
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList.txt,"~",7
|
||||
if(vaModeList.txt=="")
|
||||
{
|
||||
vis bMode1,0
|
||||
vis bMode2,0
|
||||
vis bMode3,0
|
||||
vis bModeNext,0
|
||||
}
|
||||
if(bMode1.txt=="")
|
||||
{
|
||||
click bModeNext,1
|
||||
click bModeNext,0
|
||||
}
|
||||
bMode1.pco=defaultFontColor
|
||||
bMode2.pco=defaultFontColor
|
||||
bMode3.pco=defaultFontColor
|
||||
if(bMode1.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode1.pco=1374
|
||||
}
|
||||
if(bMode2.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode2.pco=1374
|
||||
}
|
||||
if(bMode3.txt==vaModeCur.txt)
|
||||
{
|
||||
bMode3.pco=1374
|
||||
}
|
||||
//mode 2 heading
|
||||
spstr strCommand.txt,heading2.txt,"~",8
|
||||
//mode 2 type
|
||||
spstr strCommand.txt,vaType2.txt,"~",9
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur2.txt,"~",10
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList2.txt,"~",11
|
||||
if(vaModeList2.txt=="")
|
||||
{
|
||||
vis cMode1,0
|
||||
vis cMode2,0
|
||||
vis cMode3,0
|
||||
vis cModeNext,0
|
||||
}
|
||||
if(cMode1.txt=="")
|
||||
{
|
||||
click cModeNext,1
|
||||
click cModeNext,0
|
||||
}
|
||||
cMode1.pco=defaultFontColor
|
||||
cMode2.pco=defaultFontColor
|
||||
cMode3.pco=defaultFontColor
|
||||
if(cMode1.txt==vaModeCur2.txt)
|
||||
{
|
||||
cMode1.pco=1374
|
||||
}
|
||||
if(cMode2.txt==vaModeCur2.txt)
|
||||
{
|
||||
cMode2.pco=1374
|
||||
}
|
||||
if(cMode3.txt==vaModeCur2.txt)
|
||||
{
|
||||
cMode3.pco=1374
|
||||
}
|
||||
//mode 3 heading
|
||||
spstr strCommand.txt,heading3.txt,"~",12
|
||||
//mode 3 type
|
||||
spstr strCommand.txt,vaType3.txt,"~",13
|
||||
//current mode
|
||||
spstr strCommand.txt,vaModeCur3.txt,"~",14
|
||||
//mode list
|
||||
spstr strCommand.txt,vaModeList3.txt,"~",15
|
||||
if(vaModeList3.txt=="")
|
||||
{
|
||||
vis dMode1,0
|
||||
vis dMode2,0
|
||||
vis dMode3,0
|
||||
vis dModeNext,0
|
||||
}
|
||||
if(dMode1.txt=="")
|
||||
{
|
||||
click dModeNext,1
|
||||
click dModeNext,0
|
||||
}
|
||||
dMode1.pco=defaultFontColor
|
||||
dMode2.pco=defaultFontColor
|
||||
dMode3.pco=defaultFontColor
|
||||
if(dMode1.txt==vaModeCur3.txt)
|
||||
{
|
||||
dMode1.pco=1374
|
||||
}
|
||||
if(dMode2.txt==vaModeCur3.txt)
|
||||
{
|
||||
dMode2.pco=1374
|
||||
}
|
||||
if(dMode3.txt==vaModeCur3.txt)
|
||||
{
|
||||
dMode3.pco=1374
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSleep
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 1000
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(sleepTimeout!=0)
|
||||
{
|
||||
sleepValue+=1
|
||||
if(sleepTimeout<=sleepValue)
|
||||
{
|
||||
sleepValue=0
|
||||
click b0,1
|
||||
click b0,0
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,972 +0,0 @@
|
||||
Page cardGrid
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
//remove background & activate reparse mode
|
||||
vis p0,0
|
||||
recmod=1
|
||||
bauds=115200
|
||||
//debug stuff
|
||||
vis tTmp,0
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tId,0
|
||||
vis bEntity1,0
|
||||
vis bEntity2,0
|
||||
vis bEntity3,0
|
||||
vis bEntity4,0
|
||||
vis bEntity5,0
|
||||
vis bEntity6,0
|
||||
vis tEntity1,0
|
||||
vis tEntity2,0
|
||||
vis tEntity3,0
|
||||
vis tEntity4,0
|
||||
vis tEntity5,0
|
||||
vis tEntity6,0
|
||||
vis bPrev,0
|
||||
vis bNext,0
|
||||
cardGrid.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<42;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
}
|
||||
|
||||
Variable (string) entn1
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn4
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn5
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) entn6
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 500
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) type1
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type2
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type3
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type4
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type5
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Variable (string) type6
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 10
|
||||
|
||||
Text tEntity1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity1
|
||||
Max. Text Size : 30
|
||||
|
||||
Text tEntity2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity2
|
||||
Max. Text Size : 30
|
||||
|
||||
Text tEntity3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity3
|
||||
Max. Text Size : 30
|
||||
|
||||
Text tEntity4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : tEntity4
|
||||
Max. Text Size : 30
|
||||
|
||||
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 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 tHeading
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 50
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tTmp
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button bEntity1
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type1.txt
|
||||
pageIcons.tTmp1.txt=tEntity1.txt
|
||||
pageIcons.tTmp2.txt=entn1.txt
|
||||
pageIcons.tTmp3.txt=bEntity1.txt
|
||||
if(type1.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn1.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
|
||||
|
||||
Button bEntity2
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type2.txt
|
||||
pageIcons.tTmp1.txt=tEntity2.txt
|
||||
pageIcons.tTmp2.txt=entn2.txt
|
||||
pageIcons.tTmp3.txt=bEntity2.txt
|
||||
if(type2.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn2.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
|
||||
|
||||
Button bEntity3
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type3.txt
|
||||
pageIcons.tTmp1.txt=tEntity3.txt
|
||||
pageIcons.tTmp2.txt=entn3.txt
|
||||
pageIcons.tTmp3.txt=bEntity3.txt
|
||||
if(type3.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn3.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
|
||||
|
||||
Button bEntity4
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type4.txt
|
||||
pageIcons.tTmp1.txt=tEntity4.txt
|
||||
pageIcons.tTmp2.txt=entn4.txt
|
||||
pageIcons.tTmp3.txt=bEntity4.txt
|
||||
if(type4.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn4.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
|
||||
|
||||
Button bEntity5
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type5.txt
|
||||
pageIcons.tTmp1.txt=tEntity5.txt
|
||||
pageIcons.tTmp2.txt=entn5.txt
|
||||
pageIcons.tTmp3.txt=bEntity5.txt
|
||||
if(type5.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
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
|
||||
|
||||
Button bEntity6
|
||||
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
|
||||
tmLP.en=1
|
||||
tTmp.txt=type6.txt
|
||||
pageIcons.tTmp1.txt=tEntity6.txt
|
||||
pageIcons.tTmp2.txt=entn6.txt
|
||||
pageIcons.tTmp3.txt=bEntity6.txt
|
||||
if(type6.txt=="shutter")
|
||||
{
|
||||
page popupShutter
|
||||
}
|
||||
|
||||
Touch Release Event
|
||||
tmLP.en=0
|
||||
tSend.txt="event,buttonPress2,"+entn6.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
|
||||
|
||||
Button bNext
|
||||
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,cardGrid,"
|
||||
if(bPrev.txt=="î")
|
||||
{
|
||||
tSend.txt+="bHome"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bNext"
|
||||
}
|
||||
//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 bPrev
|
||||
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,cardGrid,"
|
||||
if(bPrev.txt=="î¶")
|
||||
{
|
||||
tSend.txt+="bUp"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bPrev"
|
||||
}
|
||||
//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
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sys2=sys2+1
|
||||
sys2%=10
|
||||
//n0.val=sys2
|
||||
if(sys2==9)
|
||||
{
|
||||
page pageTest
|
||||
}
|
||||
|
||||
Hotspot mSwipeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bNext,1
|
||||
|
||||
Hotspot mSwipePrev
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Hotspot mSwipeUp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Timer tmLP
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 500
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(tTmp.txt=="light")
|
||||
{
|
||||
page popupLight
|
||||
}
|
||||
if(tTmp.txt=="fan")
|
||||
{
|
||||
page popupFan
|
||||
}
|
||||
if(tTmp.txt=="input_sel")
|
||||
{
|
||||
page popupInSel
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="entityUpd")
|
||||
{
|
||||
// command format: entityUpd,heading,navigation,[,type,internalName,iconId,iconColor,displayName,optionalValue]x6
|
||||
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
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,1
|
||||
tsw mSwipeUp,0
|
||||
bPrev.txt="î°"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,1
|
||||
bPrev.txt="î¶"
|
||||
}
|
||||
spstr tId.txt,tTmp.txt,"|",1
|
||||
if(tTmp.txt=="0")
|
||||
{
|
||||
vis bNext,0
|
||||
tsw mSwipeNext,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bNext,1
|
||||
tsw mSwipeNext,1
|
||||
bNext.txt="î³"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bNext,1
|
||||
bNext.txt="î"
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type1.txt,"~",3
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn1.txt,"~",4
|
||||
if(type1.txt=="delete"||type1.txt=="")
|
||||
{
|
||||
vis tEntity1,0
|
||||
vis bEntity1,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity1.txt,"~",5
|
||||
vis bEntity1,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",6
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity1.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity1.txt,"~",7
|
||||
vis tEntity1,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type2.txt,"~",9
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn2.txt,"~",10
|
||||
if(type2.txt=="delete"||type2.txt=="")
|
||||
{
|
||||
vis tEntity2,0
|
||||
vis bEntity2,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity2.txt,"~",11
|
||||
vis bEntity2,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity2.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity2.txt,"~",13
|
||||
vis tEntity2,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type3.txt,"~",15
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn3.txt,"~",16
|
||||
if(type3.txt=="delete"||type3.txt=="")
|
||||
{
|
||||
vis tEntity3,0
|
||||
vis bEntity3,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity3.txt,"~",17
|
||||
vis bEntity3,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity3.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity3.txt,"~",19
|
||||
vis tEntity3,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type4.txt,"~",21
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn4.txt,"~",22
|
||||
if(type4.txt=="delete"||type4.txt=="")
|
||||
{
|
||||
vis tEntity4,0
|
||||
vis bEntity4,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity4.txt,"~",23
|
||||
vis bEntity4,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",24
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity4.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity4.txt,"~",25
|
||||
vis tEntity4,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type5.txt,"~",27
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn5.txt,"~",28
|
||||
if(type5.txt=="delete"||type5.txt=="")
|
||||
{
|
||||
vis tEntity5,0
|
||||
vis bEntity5,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity5.txt,"~",29
|
||||
vis bEntity5,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",30
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity5.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity5.txt,"~",31
|
||||
vis tEntity5,1
|
||||
}
|
||||
// get Type
|
||||
spstr strCommand.txt,type6.txt,"~",33
|
||||
// get internal name
|
||||
spstr strCommand.txt,entn6.txt,"~",34
|
||||
if(type6.txt=="delete"||type6.txt=="")
|
||||
{
|
||||
vis tEntity6,0
|
||||
vis bEntity6,0
|
||||
}else
|
||||
{
|
||||
// change icon
|
||||
spstr strCommand.txt,bEntity6.txt,"~",35
|
||||
vis bEntity6,1
|
||||
// change icon color
|
||||
spstr strCommand.txt,tTmp.txt,"~",36
|
||||
covx tTmp.txt,sys0,0,0
|
||||
bEntity6.pco=sys0
|
||||
// set name
|
||||
spstr strCommand.txt,tEntity6.txt,"~",37
|
||||
vis tEntity6,1
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="pageType")
|
||||
{
|
||||
sleepValue=0
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
tSend.txt="event,sleepReached,cardGrid"
|
||||
//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
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
@@ -1,845 +0,0 @@
|
||||
Page cardMedia
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
dim=dimValueNormal
|
||||
vis p0,0
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis t5,0
|
||||
vis bPrev,0
|
||||
vis bNext,0
|
||||
cardMedia.bco=defaultBcoColor
|
||||
for(sys0=0;sys0<34;sys0++)
|
||||
{
|
||||
if(b[sys0].type==98||b[sys0].type==116)
|
||||
{
|
||||
b[sys0].bco=defaultBcoColor
|
||||
b[sys0].pco=defaultFontColor
|
||||
}
|
||||
}
|
||||
if(defaultBcoColor==0)
|
||||
{
|
||||
hVolume.pic=14
|
||||
hVolume.pic1=13
|
||||
hVolume.pic2=15
|
||||
}
|
||||
|
||||
Variable (string) entn
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 80
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 750
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) vaMenu
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (string) vaSpeakerList
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 400
|
||||
|
||||
Variable (int32) vaSpeakerPos
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Text t0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,media-back
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+="media-back"
|
||||
//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
|
||||
|
||||
Text t1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
hVolume.val=hVolume.val-1
|
||||
// event,buttonPress2,internalNameEntity,volumeSlider,50
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"+entn.txt+",volumeSlider,"
|
||||
covx hVolume.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
|
||||
|
||||
Text t2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î¬
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,media-next
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+="media-next"
|
||||
//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
|
||||
|
||||
Text t3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
hVolume.val=hVolume.val+1
|
||||
// event,buttonPress2,internalNameEntity,volumeSlider,50
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"+entn.txt+",volumeSlider,"
|
||||
covx hVolume.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
|
||||
|
||||
Text t4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î
|
||||
Max. Text Size : 10
|
||||
|
||||
Text t5
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î¤
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,media-next
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+="media-OnOff"
|
||||
//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
|
||||
|
||||
Text t6
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î´
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
//speaker
|
||||
tSpeaker.pco=65535
|
||||
spstr vaSpeakerList.txt,tSpeaker.txt,"?",vaSpeakerPos.val
|
||||
vaSpeakerPos.val+=1
|
||||
if(tSpeaker.txt=="")
|
||||
{
|
||||
vaSpeakerPos.val=0
|
||||
spstr vaSpeakerList.txt,tSpeaker.txt,"?",vaSpeakerPos.val
|
||||
}
|
||||
|
||||
Text tAuthor
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 50
|
||||
|
||||
Text tHeading
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tIcon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Release Event
|
||||
if(vaMenu.txt!="")
|
||||
{
|
||||
tSend.txt="event,buttonPress2,"+vaMenu.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
|
||||
}
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tPlayPause
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : î£
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,media-pause
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+="media-pause"
|
||||
//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
|
||||
|
||||
Text tSpeaker
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 50
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
// event,buttonPress2,entn,media-next
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"
|
||||
tSend.txt+=entn.txt+","
|
||||
tSend.txt+="speaker-sel,"+tSpeaker.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
|
||||
|
||||
Text tTitle
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 50
|
||||
|
||||
Text tTmp
|
||||
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
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Slider hVolume
|
||||
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
|
||||
tmCooldown.en=1
|
||||
tmCooldown.tim=800
|
||||
// event,buttonPress2,internalNameEntity,volumeSlider,50
|
||||
//craft command
|
||||
tSend.txt="event,buttonPress2,"+entn.txt+",volumeSlider,"
|
||||
covx hVolume.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 bNext
|
||||
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,cardMedia,"
|
||||
if(bPrev.txt=="î")
|
||||
{
|
||||
tSend.txt+="bHome"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bNext"
|
||||
}
|
||||
//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 bPrev
|
||||
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,cardMedia,"
|
||||
if(bPrev.txt=="î¶")
|
||||
{
|
||||
tSend.txt+="bUp"
|
||||
}else
|
||||
{
|
||||
tSend.txt+="bPrev"
|
||||
}
|
||||
//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 mSwipeNext
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bNext,1
|
||||
|
||||
Hotspot mSwipePrev
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Hotspot mSwipeUp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
click bPrev,1
|
||||
|
||||
Timer tmCooldown
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 100
|
||||
Enabled : no
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
tmCooldown.en=0
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="entityUpd")
|
||||
{
|
||||
//heading
|
||||
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
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,1
|
||||
tsw mSwipeUp,0
|
||||
bPrev.txt="î°"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bPrev,1
|
||||
tsw mSwipePrev,0
|
||||
tsw mSwipeUp,1
|
||||
bPrev.txt="î¶"
|
||||
}
|
||||
spstr tId.txt,tTmp.txt,"|",1
|
||||
if(tTmp.txt=="0")
|
||||
{
|
||||
vis bNext,0
|
||||
tsw mSwipeNext,0
|
||||
}
|
||||
if(tTmp.txt=="1")
|
||||
{
|
||||
vis bNext,1
|
||||
tsw mSwipeNext,1
|
||||
bNext.txt="î³"
|
||||
}
|
||||
if(tTmp.txt=="2")
|
||||
{
|
||||
vis bNext,1
|
||||
bNext.txt="î"
|
||||
}
|
||||
//entity name
|
||||
spstr strCommand.txt,entn.txt,"~",3
|
||||
//icon
|
||||
spstr strCommand.txt,tIcon.txt,"~",4
|
||||
//title
|
||||
spstr strCommand.txt,tTitle.txt,"~",5
|
||||
//author
|
||||
spstr strCommand.txt,tAuthor.txt,"~",6
|
||||
//volume
|
||||
spstr strCommand.txt,tTmp.txt,"~",7
|
||||
covx tTmp.txt,sys0,0,0
|
||||
hVolume.val=sys0
|
||||
//icon
|
||||
spstr strCommand.txt,tPlayPause.txt,"~",8
|
||||
//speaker current
|
||||
spstr strCommand.txt,tSpeaker.txt,"~",9
|
||||
if(tSpeaker.txt!="")
|
||||
{
|
||||
tSpeaker.pco=1374
|
||||
}else
|
||||
{
|
||||
tSpeaker.pco=65535
|
||||
}
|
||||
//speaker list
|
||||
spstr strCommand.txt,vaSpeakerList.txt,"~",10
|
||||
if(vaSpeakerList.txt=="")
|
||||
{
|
||||
vis t6,0
|
||||
}
|
||||
vaSpeakerPos.val=0
|
||||
// on off button
|
||||
spstr strCommand.txt,tTmp.txt,"~",11
|
||||
if(tTmp.txt=="disable")
|
||||
{
|
||||
vis t5,0
|
||||
}else
|
||||
{
|
||||
vis t5,1
|
||||
covx tTmp.txt,t5.pco,0,0
|
||||
}
|
||||
//tIconBtnEntityName
|
||||
spstr strCommand.txt,vaMenu.txt,"~",12
|
||||
}
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
sleepValue=0
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="popupShutter")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupShutter
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
if(bufferPos==usize)
|
||||
{
|
||||
// copy whole buffer to t1.txt, for debugging
|
||||
//ucopy t2.txt,0,usize,0
|
||||
// ucopy n2.val,0,usize,0
|
||||
// clear whole buffer
|
||||
//code_c
|
||||
//bufferPos=0
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
tSend.txt="event,sleepReached,cardMedia"
|
||||
//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
|
||||
}
|
||||
}
|
||||
|
||||
TouchCap tc0
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sleepValue=0
|
||||
|
||||
@@ -1,397 +0,0 @@
|
||||
Page pageStartup
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
vis p0,0
|
||||
recmod=1
|
||||
bauds=115200
|
||||
vis tSend,0
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis tId,0
|
||||
vis bSendStartup,0
|
||||
vis frame_ptr,0
|
||||
vis spinner_w,0
|
||||
vis frapic_w,0
|
||||
vis usual_cnt,0
|
||||
vis tMsg2,0
|
||||
vis tMsg3,0
|
||||
vis tVersion,0
|
||||
dim=100
|
||||
|
||||
Postinitialize Event
|
||||
//send messages by clicking button
|
||||
click bSendStartup,1
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Number frame_ptr
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 0
|
||||
|
||||
Number frapic_w
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 1960
|
||||
|
||||
Number spinner_w
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 140
|
||||
|
||||
Number usual_cnt
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Value : 0
|
||||
|
||||
Text tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 20
|
||||
|
||||
Text tMsg1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : Waiting for content ...
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tMsg2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : This is taking longer than usual,
|
||||
Max. Text Size : 100
|
||||
|
||||
Text tMsg3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : please check your backend configuration
|
||||
Max. Text Size : 100
|
||||
|
||||
Text tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : newtxt
|
||||
Max. Text Size : 100
|
||||
|
||||
Text tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tVersion
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : 43
|
||||
Max. Text Size : 10
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Button bSendStartup
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
State : unpressed
|
||||
Text : startup
|
||||
Max. Text Size : 10
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
recmod=1
|
||||
bauds=115200
|
||||
// startup event
|
||||
tSend.txt="event,startup,"+tVersion.txt+",eu"
|
||||
//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 mSpinner
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
sys2=sys2+1
|
||||
sys2%=10
|
||||
//n0.val=sys2
|
||||
if(sys2==9)
|
||||
{
|
||||
page pageTest
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
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
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
dim=dimValueNormal
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,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")
|
||||
{
|
||||
dim=100
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="screensaver")
|
||||
{
|
||||
page screensaver
|
||||
}
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
Timer tmSpinner
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 80
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
xpic mSpinner.x,mSpinner.y,spinner_w.val,140,frame_ptr.val,0,9 // 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)
|
||||
{
|
||||
usual_cnt.val+=1
|
||||
sys0=usual_cnt.val%5
|
||||
if(sys0==0)
|
||||
{
|
||||
// retry sending startup messages by clicking button
|
||||
click bSendStartup,1
|
||||
}
|
||||
}
|
||||
if(usual_cnt.val==10)
|
||||
{
|
||||
vis tMsg2,1
|
||||
vis tMsg3,1
|
||||
}
|
||||
|
||||
@@ -1,871 +0,0 @@
|
||||
Page screensaver
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Locked : no
|
||||
Swide up page ID : disabled
|
||||
Swide down page ID : disabled
|
||||
Swide left page ID : disabled
|
||||
Swide right page ID : disabled
|
||||
|
||||
Events
|
||||
Preinitialize Event
|
||||
recmod=1
|
||||
bauds=115200
|
||||
vis tInstruction,0
|
||||
vis tTmp,0
|
||||
vis p0,0
|
||||
vis tNotifyHead,0
|
||||
vis tNotifyText,0
|
||||
//load gloabl time string from pageIcons
|
||||
//tTime.txt=vaTime.txt
|
||||
spstr pageIcons.vaTime.txt,tTime.txt,"?",0
|
||||
spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
|
||||
if(tAMPM.txt=="")
|
||||
{
|
||||
vis tAMPM,0
|
||||
}
|
||||
tDate.txt=pageIcons.vaDate.txt
|
||||
dim=dimValue
|
||||
vis tSend,0
|
||||
//page open event
|
||||
// clear weather elements, to keep example content in HMI
|
||||
|
||||
Variable (string) strCommand
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 200
|
||||
|
||||
Variable (string) tId
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 25
|
||||
|
||||
Variable (string) tInstruction
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (string) tSend
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (string) tTmp
|
||||
Attributes
|
||||
Scope : local
|
||||
Text :
|
||||
Max. Text Size: 50
|
||||
|
||||
Variable (int32) vaTap
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) xc1
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) xc2
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) xcR
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) yc1
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) yc2
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Variable (int32) ycR
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Text t10
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : |
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tAMPM
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : PM
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tDate
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : Tuesday, 08. March 2022
|
||||
Max. Text Size : 40
|
||||
|
||||
Text tF1Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tF2Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tF3Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tF4Icon
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 5
|
||||
|
||||
Text tForecast1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast1Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast2Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast3
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast3Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast4
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tForecast4Val
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 10
|
||||
|
||||
Text tIcon1
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 5
|
||||
|
||||
Text tIcon2
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 5
|
||||
|
||||
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
|
||||
|
||||
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 tMainIcon
|
||||
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 tMainText
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
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 tNotifyHead
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 35
|
||||
|
||||
Text tNotifyText
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 35
|
||||
|
||||
Text tTime
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text : 21:32
|
||||
Max. Text Size : 15
|
||||
|
||||
Text tTimeAdd
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
Associated Keyboard : none
|
||||
Text :
|
||||
Max. Text Size : 40
|
||||
|
||||
Picture p0
|
||||
Attributes
|
||||
Scope : local
|
||||
Dragging : 0
|
||||
Disable release event after dragging: 0
|
||||
Send Component ID : disabled
|
||||
|
||||
Timer tm0
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
if(tc0.val!=0)
|
||||
{
|
||||
xc2.val=tch0
|
||||
yc2.val=tch1
|
||||
}
|
||||
|
||||
Timer tmSerial
|
||||
Attributes
|
||||
Scope : local
|
||||
Period (ms): 50
|
||||
Enabled : yes
|
||||
|
||||
Events
|
||||
Timer Event
|
||||
// data available
|
||||
if(usize>1)
|
||||
{
|
||||
bufferPos=0
|
||||
while(bufferPos<usize)
|
||||
{
|
||||
// check for 0x55 0xBB - Command Init Secuence
|
||||
if(u[bufferPos]==187&&u[bufferPos-1]==85)
|
||||
{
|
||||
//remove garbage at the start of the buffer if there's any to free buffer for command
|
||||
if(u[bufferPos]!=1)
|
||||
{
|
||||
udelete bufferPos-1
|
||||
}
|
||||
//instruction is now aligned with buffer, because we deleted garbage before instrcution
|
||||
//get length after init sequence (check if there are more than to bytes in buffer)
|
||||
if(3<usize)
|
||||
{
|
||||
// check if serial buffer has reached the announced length
|
||||
ucopy payloadLength,2,2,0
|
||||
// we are only checking payload length so we have to skip first 3 bytes (init+payload length) (-1 because of < instead of <=)
|
||||
payloadLength+=3
|
||||
// payload length does also not contain crc, so we are adding another 2 bytes for crc
|
||||
payloadLength+=2
|
||||
if(payloadLength<usize)
|
||||
{
|
||||
// calculate crc
|
||||
crcrest 1,0xFFFF
|
||||
// u[2] contains payload legth at 3rd pos in buffer, we are calculating crc from 3rd pos with number of bytes from payload length
|
||||
//crcputu 3,u[2]
|
||||
// u[2] cotnains payload length, we are calculating a crc over the whole message, so we have to add 3 to the length from u[2]
|
||||
crcputu 0,payloadLength-1
|
||||
// get recived crc to be able to compare it
|
||||
ucopy recvCrc,payloadLength-1,2,0
|
||||
// compare crc with recived value
|
||||
if(crcval==recvCrc)
|
||||
{
|
||||
// crc is okay
|
||||
// here is the location where acual code should be
|
||||
// write command to variable strCommand
|
||||
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)
|
||||
spstr strCommand.txt,tInstruction.txt,"~",0
|
||||
if(tInstruction.txt=="wake")
|
||||
{
|
||||
//dim=100
|
||||
click tc0,1
|
||||
}
|
||||
if(tInstruction.txt=="dimmode")
|
||||
{
|
||||
// get value
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
covx tTmp.txt,dimValue,0,0
|
||||
dim=dimValue
|
||||
// get value normal
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,dimValueNormal,0,0
|
||||
// get background color
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultBcoColor,0,0
|
||||
}
|
||||
// get font color
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,defaultFontColor,0,0
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="time")
|
||||
{
|
||||
//get set time to global variable
|
||||
spstr strCommand.txt,pageIcons.vaTime.txt,"~",1
|
||||
spstr pageIcons.vaTime.txt,tTime.txt,"?",0
|
||||
spstr pageIcons.vaTime.txt,tAMPM.txt,"?",1
|
||||
if(tAMPM.txt=="")
|
||||
{
|
||||
vis tAMPM,0
|
||||
}
|
||||
spstr strCommand.txt,tTimeAdd.txt,"~",2
|
||||
}
|
||||
if(tInstruction.txt=="date")
|
||||
{
|
||||
//get set date to global variable
|
||||
spstr strCommand.txt,pageIcons.vaDate.txt,"~",1
|
||||
tDate.txt=pageIcons.vaDate.txt
|
||||
}
|
||||
if(tInstruction.txt=="timeout")
|
||||
{
|
||||
//set timeout to global var
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
covx tTmp.txt,sleepTimeout,0,0
|
||||
}
|
||||
if(tInstruction.txt=="weatherUpdate"&&tNotifyHead.txt==""&&tNotifyText.txt=="")
|
||||
{
|
||||
vis tMainIcon,1
|
||||
vis tMainIconAlt,0
|
||||
vis tMainText,1
|
||||
vis tMainTextAlt,0
|
||||
vis tMRIcon,0
|
||||
vis tMR,0
|
||||
//tMainIcon
|
||||
spstr strCommand.txt,tMainIcon.txt,"~",1
|
||||
tMainIconAlt.txt=tMainIcon.txt
|
||||
//tMainText
|
||||
spstr strCommand.txt,tMainText.txt,"~",2
|
||||
tMainTextAlt.txt=tMainText.txt
|
||||
//tForecast1
|
||||
spstr strCommand.txt,tForecast1.txt,"~",3
|
||||
//tF1Icon
|
||||
spstr strCommand.txt,tF1Icon.txt,"~",4
|
||||
//tForecast1Val
|
||||
spstr strCommand.txt,tForecast1Val.txt,"~",5
|
||||
//tForecast2
|
||||
spstr strCommand.txt,tForecast2.txt,"~",6
|
||||
//tF2Icon
|
||||
spstr strCommand.txt,tF2Icon.txt,"~",7
|
||||
//tForecast2Val
|
||||
spstr strCommand.txt,tForecast2Val.txt,"~",8
|
||||
//tForecast3
|
||||
spstr strCommand.txt,tForecast3.txt,"~",9
|
||||
//tF3Icon
|
||||
spstr strCommand.txt,tF3Icon.txt,"~",10
|
||||
//tForecast3Val
|
||||
spstr strCommand.txt,tForecast3Val.txt,"~",11
|
||||
//tForecast4
|
||||
spstr strCommand.txt,tForecast4.txt,"~",12
|
||||
//tF4Icon
|
||||
spstr strCommand.txt,tF4Icon.txt,"~",13
|
||||
//tForecast4Val
|
||||
spstr strCommand.txt,tForecast4Val.txt,"~",14
|
||||
//alternative layout
|
||||
//tMRIcon
|
||||
spstr strCommand.txt,tMRIcon.txt,"~",15
|
||||
if(tMRIcon.txt!=""&&p0.w!=320)
|
||||
{
|
||||
//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
|
||||
//statusIcon1
|
||||
spstr strCommand.txt,tIcon1.txt,"~",17
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,tIcon1.pco,0,0
|
||||
//statusIcon2
|
||||
spstr strCommand.txt,tIcon2.txt,"~",19
|
||||
spstr strCommand.txt,tTmp.txt,"~",20
|
||||
covx tTmp.txt,tIcon2.pco,0,0
|
||||
}
|
||||
if(tInstruction.txt=="color"&&tNotifyHead.txt==""&&tNotifyText.txt=="")
|
||||
{
|
||||
spstr strCommand.txt,tTmp.txt,"~",1
|
||||
covx tTmp.txt,tTime.bco,0,0
|
||||
if(tTime.bco!=screensaver.bco)
|
||||
{
|
||||
screensaver.bco=tTime.bco
|
||||
tAMPM.bco=tTime.bco
|
||||
tDate.bco=tTime.bco
|
||||
tMainIcon.bco=tTime.bco
|
||||
tMainText.bco=tTime.bco
|
||||
tMainIconAlt.bco=tTime.bco
|
||||
tMainTextAlt.bco=tTime.bco
|
||||
tMRIcon.bco=tTime.bco
|
||||
tMR.bco=tTime.bco
|
||||
tMRIcon.bco=tTime.bco
|
||||
tIcon1.bco=tTime.bco
|
||||
tIcon2.bco=tTime.bco
|
||||
tForecast1.bco=tTime.bco
|
||||
tForecast1Val.bco=tTime.bco
|
||||
tF1Icon.bco=tTime.bco
|
||||
tForecast2.bco=tTime.bco
|
||||
tForecast2Val.bco=tTime.bco
|
||||
tF2Icon.bco=tTime.bco
|
||||
tForecast3.bco=tTime.bco
|
||||
tForecast3Val.bco=tTime.bco
|
||||
tF3Icon.bco=tTime.bco
|
||||
tForecast4.bco=tTime.bco
|
||||
tForecast4Val.bco=tTime.bco
|
||||
tF4Icon.bco=tTime.bco
|
||||
tTimeAdd.bco=tTime.bco
|
||||
}
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
covx tTmp.txt,tTime.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
covx tTmp.txt,tAMPM.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
covx tTmp.txt,tDate.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",5
|
||||
covx tTmp.txt,tMainIcon.pco,0,0
|
||||
tMainIconAlt.pco=tMainIcon.pco
|
||||
spstr strCommand.txt,tTmp.txt,"~",6
|
||||
covx tTmp.txt,tMainText.pco,0,0
|
||||
tMainTextAlt.pco=tMainText.pco
|
||||
spstr strCommand.txt,tTmp.txt,"~",7
|
||||
covx tTmp.txt,tForecast1.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",8
|
||||
covx tTmp.txt,tForecast2.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",9
|
||||
covx tTmp.txt,tForecast3.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",10
|
||||
covx tTmp.txt,tForecast4.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",11
|
||||
covx tTmp.txt,tF1Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",12
|
||||
covx tTmp.txt,tF2Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",13
|
||||
covx tTmp.txt,tF3Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",14
|
||||
covx tTmp.txt,tF4Icon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",15
|
||||
covx tTmp.txt,tForecast1Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",16
|
||||
covx tTmp.txt,tForecast2Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",17
|
||||
covx tTmp.txt,tForecast3Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",18
|
||||
covx tTmp.txt,tForecast4Val.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",19
|
||||
covx tTmp.txt,t10.bco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",20
|
||||
covx tTmp.txt,tMRIcon.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",21
|
||||
covx tTmp.txt,tMR.pco,0,0
|
||||
spstr strCommand.txt,tTmp.txt,"~",22
|
||||
covx tTmp.txt,tTimeAdd.pco,0,0
|
||||
if(tMRIcon.txt!=""&&p0.w!=320)
|
||||
{
|
||||
tF4Icon.pco=tF3Icon.pco
|
||||
tF3Icon.pco=tF2Icon.pco
|
||||
tF2Icon.pco=tF1Icon.pco
|
||||
tForecast4Val.pco=tForecast3Val.pco
|
||||
tForecast3Val.pco=tForecast2Val.pco
|
||||
tForecast2Val.pco=tForecast1Val.pco
|
||||
tForecast4.pco=tForecast3.pco
|
||||
tForecast3.pco=tForecast2.pco
|
||||
tForecast2.pco=tForecast1.pco
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="notify")
|
||||
{
|
||||
spstr strCommand.txt,tNotifyHead.txt,"~",1
|
||||
spstr strCommand.txt,tNotifyText.txt,"~",2
|
||||
if(tNotifyHead.txt!=""||tNotifyText.txt!="")
|
||||
{
|
||||
vis tNotifyHead,1
|
||||
vis tNotifyText,1
|
||||
}else
|
||||
{
|
||||
vis tNotifyHead,0
|
||||
vis tNotifyText,0
|
||||
}
|
||||
tNotifyHead.bco=tTime.bco
|
||||
tNotifyText.bco=tTime.bco
|
||||
spstr strCommand.txt,tTmp.txt,"~",3
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,tNotifyHead.pco,0,0
|
||||
}
|
||||
spstr strCommand.txt,tTmp.txt,"~",4
|
||||
if(tTmp.txt!="")
|
||||
{
|
||||
covx tTmp.txt,tNotifyText.pco,0,0
|
||||
}
|
||||
}
|
||||
if(tInstruction.txt=="pageType")
|
||||
{
|
||||
dim=100
|
||||
//command format pageType,specialPageName
|
||||
//write name of speical page to tId
|
||||
spstr strCommand.txt,tId.txt,"~",1
|
||||
//save second arg if there's one
|
||||
spstr strCommand.txt,tTmp.txt,"~",2
|
||||
//save third arg if there's one
|
||||
spstr strCommand.txt,pageIcons.tTmp2.txt,"~",3
|
||||
spstr strCommand.txt,pageIcons.tTmp3.txt,"~",4
|
||||
//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
|
||||
bufferPos=0
|
||||
if(tId.txt=="popupLight")
|
||||
{
|
||||
pageIcons.tTmp1.txt=tTmp.txt
|
||||
page popupLight
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="cardThermo")
|
||||
{
|
||||
page cardThermo
|
||||
}
|
||||
if(tId.txt=="cardMedia")
|
||||
{
|
||||
page cardMedia
|
||||
}
|
||||
if(tId.txt=="pageStartup")
|
||||
{
|
||||
page pageStartup
|
||||
}
|
||||
if(tId.txt=="popupNotify")
|
||||
{
|
||||
page popupNotify
|
||||
}
|
||||
if(tId.txt=="cardGrid")
|
||||
{
|
||||
page cardGrid
|
||||
}
|
||||
if(tId.txt=="cardEntities")
|
||||
{
|
||||
page cardEntities
|
||||
}
|
||||
if(tId.txt=="cardAlarm")
|
||||
{
|
||||
page cardAlarm
|
||||
}
|
||||
if(tId.txt=="cardQR")
|
||||
{
|
||||
page cardQR
|
||||
}
|
||||
if(tId.txt=="cardPower")
|
||||
{
|
||||
page cardPower
|
||||
}
|
||||
}
|
||||
// end of user code
|
||||
udelete payloadLength-1
|
||||
bufferPos=0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// next character
|
||||
bufferPos++
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
Attributes
|
||||
Scope: local
|
||||
Value: 0
|
||||
|
||||
Events
|
||||
Touch Press Event
|
||||
xc1.val=tch0
|
||||
yc1.val=tch1
|
||||
tm0.en=1
|
||||
if(tNotifyHead.txt!=""||tNotifyText.txt!="")
|
||||
{
|
||||
if(dim!=0)
|
||||
{
|
||||
tNotifyHead.txt=""
|
||||
tNotifyText.txt=""
|
||||
vis tNotifyHead,0
|
||||
vis tNotifyText,0
|
||||
}
|
||||
}
|
||||
dim=dimValueNormal
|
||||
vaTap.val+=1
|
||||
covx vaTap.val,tTmp.txt,0,0
|
||||
tSend.txt="event,buttonPress2,screensaver,bExit,"+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
|
||||
|
||||
Touch Release Event
|
||||
tm0.en=0
|
||||
if(tch0==0)
|
||||
// When this is zero we can interpret that as the real end of the drag event
|
||||
{
|
||||
xcR.val=xc1.val-xc2.val
|
||||
ycR.val=yc1.val-yc2.val
|
||||
// new method
|
||||
// one of the difference values should be low to be a valid direction, in case it has a high value it's not a valid swipe, because it's diagonal
|
||||
// x difference between -125 and 125 (swipe on y-axis)
|
||||
if(xcR.val>-125&&xcR.val<125)
|
||||
{
|
||||
//tStatusNew.txt="x low, -> y"
|
||||
// check if below minimum value (change is negative)
|
||||
if(ycR.val<-80)
|
||||
{
|
||||
//tDirNew.txt="down"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeDown"
|
||||
}else if(ycR.val>80)
|
||||
{
|
||||
//tDirNew.txt="up"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeUp"
|
||||
}else
|
||||
{
|
||||
//tDirNew.txt="invalid"
|
||||
}
|
||||
// y difference between -125 and 125 (swipe on x-axis)
|
||||
}else if(ycR.val>-125&&ycR.val<125)
|
||||
{
|
||||
//tStatusNew.txt="y low, -> x"
|
||||
if(xcR.val<-80)
|
||||
{
|
||||
//tDirNew.txt="right"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeRight"
|
||||
}else if(xcR.val>80)
|
||||
{
|
||||
//tDirNew.txt="left"
|
||||
tSend.txt="event,buttonPress2,screensaver,swipeLeft"
|
||||
}else
|
||||
{
|
||||
//tDirNew.txt="invalid"
|
||||
}
|
||||
//diagonal swipe invalid
|
||||
}else
|
||||
{
|
||||
//tStatusNew.txt="invalid"
|
||||
//tDirNew.txt="diagonal"
|
||||
}
|
||||
}
|
||||
//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
|
||||
|
||||
Reference in New Issue
Block a user