From f05cb6d50b29177c02291322c1091cd4f8f336cd Mon Sep 17 00:00:00 2001 From: s-hadinger <49731213+s-hadinger@users.noreply.github.com> Date: Thu, 15 Feb 2024 19:46:50 +0100 Subject: [PATCH] HASPmota fix and improve demo with pixel-perfect fonts (#20734) --- CHANGELOG.md | 1 + tasmota/berry/haspmota_src/haspmota_demo.tapp | Bin 201952 -> 208708 bytes .../haspmota_demo/Berkelium64.lvfont | Bin 0 -> 952 bytes .../haspmota_demo/PrintChar21.lvfont | Bin 0 -> 948 bytes .../haspmota_demo/Shaston320.lvfont | Bin 0 -> 1076 bytes .../haspmota_src/haspmota_demo/m3x6.lvfont | Bin 0 -> 824 bytes .../haspmota_src/haspmota_demo/m5x7.lvfont | Bin 0 -> 952 bytes .../haspmota_src/haspmota_demo/pages.jsonl | 29 ++++++++++++------ 8 files changed, 21 insertions(+), 9 deletions(-) create mode 100644 tasmota/berry/haspmota_src/haspmota_demo/Berkelium64.lvfont create mode 100644 tasmota/berry/haspmota_src/haspmota_demo/PrintChar21.lvfont create mode 100644 tasmota/berry/haspmota_src/haspmota_demo/Shaston320.lvfont create mode 100644 tasmota/berry/haspmota_src/haspmota_demo/m3x6.lvfont create mode 100644 tasmota/berry/haspmota_src/haspmota_demo/m5x7.lvfont diff --git a/CHANGELOG.md b/CHANGELOG.md index 9035b6227..c53f0eb72 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ All notable changes to this project will be documented in this file. - ESP32 Core3 SPI ethernet support for all models - Berry class `int64` made immutable (#20727) - LVGL make lv_touch_3_buttons more responsive (#20728) +- HASPmota fix and improve demo with pixel-perfect fonts ### Fixed diff --git a/tasmota/berry/haspmota_src/haspmota_demo.tapp b/tasmota/berry/haspmota_src/haspmota_demo.tapp index b7571d884a576b09bba881ff91658dafb9ac1b51..3bc54997f66f328d142342e2f9e5435e4641f309 100644 GIT binary patch delta 6823 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 diff --git a/tasmota/berry/haspmota_src/haspmota_demo/Berkelium64.lvfont b/tasmota/berry/haspmota_src/haspmota_demo/Berkelium64.lvfont new file mode 100644 index 0000000000000000000000000000000000000000..073d1e37ee2c630fd88df9b069fa85816f266ed6 GIT binary patch literal 952 zcmX9+ZD>q>=;|n3e!f^AyQr1YVA5SfrzLej@e(b9|dctKNP8+H@lbTJ@=^=(*ZYz-f<{4fd)H1DyHsEaI_0DjT;yrt`>H+> z9gln&C_@ESU<1Cb0{)hr?j6yt&0M043?CcniFxAD8YhBxrX9OG@$4Be2;-SJH}k_JYvTT2e76<<93cyEW=bLHPLbHq|S zQXdFJ760L1eC<8M{?UqGUe}hi;^R(Ad@lqaTpUn*!Z%}>@p9M;<|hn%-{4XHlD7@m z99lJ%gGr&2X^Tc)Yrmw|@`TL|KNXS*i$;(130YbFMNWL14g>-^#6723$Q??_pBPA( z@!-pr@5EZeD*JVz<;ygOEu=A@|6kwy(-9$4#cutjg+4tR6rpUi!q~5PbSx04GUKi5 zKM)sh@iF5qCx_I6{t9FDql3>Z|Id!iHTi2=vDMWj)wsH%hF*~uvieFwI=VY-_k{Af z19B{0d1?Fb^s5g$f*Ik??TGNv>9FVY*8130n`^~E@!&CY$nGgtQjATCPEEw3!Q`Y# z%WsPI(qaJ_xoOyw>93ESSDcA7J9bZ_&ZM|D)tZn2=x~z8&cZVpg0@3x6-;%@{MeO? e+%t;L`ew=}wSQq8s#FKdbkMY6moEC|3|;_8oDv-X literal 0 HcmV?d00001 diff --git a/tasmota/berry/haspmota_src/haspmota_demo/PrintChar21.lvfont b/tasmota/berry/haspmota_src/haspmota_demo/PrintChar21.lvfont new file mode 100644 index 0000000000000000000000000000000000000000..f2ff7c4f97fc6b430f080a29136020ee9d87e007 GIT binary patch literal 948 zcmW+!T}TvB6h7xFI3eWS6;UhL8C@}=Y<0_pQnPh87mLDbcDArwcPt~7l=h)eaI!@P zn-cni2x2h^gCZ!1>LK>U6(M>EdI&1E^1%$kKw=7WJ9ik)eD^!|JKwqIa(w`B=2TBF z5*C02MUc;n00)bJQy#Fe&;j~2QRss`LyT}Mg-p>6NWmPQCVtryC!YdZad1Hy1VDpv z55Pyt44l(@`UoZZieWvtp^`jmp$_Vy5q3imBCsD0LMPRn1Rc)8FkFB!n1HKr6Yj!2 zn1&g61W(~5WMB^7!h7=l221b@Z1@L-Sd4D0L>X(b4tHV`wqXZ$Vhp?SG!9}CNAMDw zXyFvzz&n`62lyDD;VaDG9KOMK_yIrT0xsb){>D{gOkyRhjBR8Jt7Y4mpY3AJEW{#g zKRd*ttcxYs8M=%CioSu1r)gkc`CqU9xxux=ub(_@*owmjz9%blZAD+4%TTgM3KOj86@slQi=r_>5V$s~teYif>2_9@1K-8Tq@Z&M z>)~XF%(avv3Hh}jG2v*PKPDilSBL|Wzwk)v8|Kr3Es26;JSX=4kc}aX9VNkx!;b$X ziFGu*&jCk5V~P%I^_HG}bT2GoYh9_!?W~yyYQUBeQ6TaM@ piagi8SpJPh+2KKh-jCO>k_|nEf*i^9R~eU6>Qdzv237vN@gIR*AwU2C literal 0 HcmV?d00001 diff --git a/tasmota/berry/haspmota_src/haspmota_demo/Shaston320.lvfont b/tasmota/berry/haspmota_src/haspmota_demo/Shaston320.lvfont new file mode 100644 index 0000000000000000000000000000000000000000..4470f039fa8c80b4adc25e932a863ccf98bcb1db GIT binary patch literal 1076 zcmXX^Uuaup6hG%n)^((F9Xh#Xvx)eyYD;@#V7;|5{bbk%q;F+DI9Ow9DkCG=gV;;g zEX~zaY@`pvKQ)jjMbwun^dTLF^p1!XsVL%~WGx|aa<8&YHpJL8weft3_j35%^XLA~ z`JL~R0pR7Ad{anhfp$0yjfOC2B0wj_0j<_U0?6EC{!6|vBkUt{kX@k61z=781M)Td zB=K12s}qjH2^fUuA!Y~Ip-3>~_e~SF(`%#r33vofgA7CPG&~FAFaa+RmmdNUf>+@x zEWi@H3u*WmK7$NwKpwt^@8Cz+hFfqK{)T_y5FW*c@FYHlz4#aLFQqjY@AK7^K6P; zWS5!BqHKXJv3FRCeZ*GT8q2a9>`V3y`+?nL6=u>h?vPCf)qn%uaN@|pBwy)P4Q^Wt z-A!H%@>zZ1rrq}QF6WjnY~$94&q-eG`fD9W`?l^lAGMd2J-wLlcSy?KR~^noKv!%} zj7DDMeDU#k#24+UUDJ8;SlKcE0Jp5m`40I8aBb)hGo{WDrX*iH!nNUI+?i-$Sj}?H z(`BYBajuONu1LZkF3hC_j#Lu9ge>ZfYBOFmla;JvzQ3)fwgzq`w!XC`=lL~zIikdJ zl5hFF7I#$Qv-#g$7k|oNSwzfq%^IfjendrftQplEiY0zo~qeMSj;t)A}gQfb>o!aZu%FMjc;#(hyr3-L=4 zd2h@J1ZKD;*Crk-`OC}8yL_c~UAQRhwGLEErBZ=w1Eg$H zP?^MBAEY%GKyc9^MU~iUEg_Nx_epB&vdj5tYS6FJP+o1-eJOd$YwhoD$?OkFRoc`U z_0JtK#lS6Tv&`$z T@Wm#T^5&;_uXE@~dLRA+q;8}9 literal 0 HcmV?d00001 diff --git a/tasmota/berry/haspmota_src/haspmota_demo/m3x6.lvfont b/tasmota/berry/haspmota_src/haspmota_demo/m3x6.lvfont new file mode 100644 index 0000000000000000000000000000000000000000..08dca3ca1f0d72db2b4570d632d1487383fa2282 GIT binary patch literal 824 zcmW+zYe81CPq=#5W*k!fs=^D7E{`y%drdUh*H_S;O+A|_1m|VSSGn#=nn}5 zFHuAiVm~s`AB8LF0)q&m9~Ba25GAb;0tsh7LLxh#yqt5M^FGhH@V*WJtN;)X*h&( zEJ_v#HP*LCOp&t{J77b))MrWE0p!AsqsYf86u^UX@S+m6XhbUvbf618xQ2cVU=YK& zi949UeN5va9^)Bec!f83hY$FKFZh9<_=VqC#|A94g|?H8(rFLbX&>c~lU#I!j?)P$ zpfglLWmH8PwUACB>ZEQ8Qy&e`AdS*(x=Z(Hl4j@;&Cv^bNw4WG&C?=%rmqyIWm=(C z`Xi6x4|KN_Q>scK=9Bwbvo?o4>k(e-Ty}$%3a_eJn@Z9~S=rX67Ys{itjvIv$b+uQ} zzyY&!@$hF386C_iY=CzAJPB;sZ2pF-gT%OsO=YX(lS&}VZ)d*(_P~5rli5y4f_1P9 zM%k-x^jFm|#_+QM7C|DUfD1IxA&YhMU?UVk32cX*tWXIx&;Uo^1hl{zxByq+CIsOw zbVDCJ0TW)rTlm1LUtj{J;3xbB!dO%=8C6_?>9`ixV*wUpDOO-5)?yNJpAlpNM+DByM<&bH;mY2ngbMY}AF zg7VG6@ZIlIT{p_~xUSgmiZBvEPdWcwfwL+Ocs!ufV26mLvxvx7Zm}11I#VSi&S$d! zY*$mhPNDI!)(uSFo|KWHVP{OM%u6n0kJHU`1v;CBkruDUc9kkxLh7kzHMVCHx5jdc zT?QThyvT~3&0v9!$q360e2B?sGPF!cZ*Y84dJ+^Fxj>dO{n3a_cy09-8dh3&OESHf zNz=vYUfW<@X7!tkTtn(G{ePTLhnTT+#K=}zQOwA*afh8tNjV)1 B83_OY literal 0 HcmV?d00001 diff --git a/tasmota/berry/haspmota_src/haspmota_demo/pages.jsonl b/tasmota/berry/haspmota_src/haspmota_demo/pages.jsonl index 9f1cb4ef1..dc4dfa188 100644 --- a/tasmota/berry/haspmota_src/haspmota_demo/pages.jsonl +++ b/tasmota/berry/haspmota_src/haspmota_demo/pages.jsonl @@ -10,14 +10,6 @@ {"id":102,"obj":"btn","x":120,"y":210,"w":80,"h":25,"action":"back","bg_color":"#1fa3ec","radius":10,"border_side":1,"text":"\uF015","text_font":"montserrat-20"} {"id":103,"obj":"btn","x":220,"y":210,"w":80,"h":25,"action":"next","bg_color":"#1fa3ec","radius":10,"border_side":1,"text":"\uF054","text_font":"montserrat-20"} -{"page":2,"comment":"---------- Page 2 ----------"} -{"id":0,"bg_color":"#0000A0","bg_grad_color":"#000000","bg_grad_dir":1,"text_color":"#FFFFFF"} - -{"comment":"---------- Wifi status ----------"} -{"id":20,"obj":"lv_wifi_graph","x":257,"y":25,"w":60,"h":40,"radius":0} -{"id":21,"obj":"lv_tasmota_info","x":3,"y":25,"w":251,"h":40,"radius":0} -{"id":22,"obj":"lv_tasmota_log","x":3,"y":68,"w":314,"h":90,"radius":0,"text_font":12} - {"page":1,"comment":"---------- Page 1 ----------"} {"id":0,"bg_color":"#0000A0","bg_grad_color":"#000000","bg_grad_dir":1,"text_color":"#FFFFFF"} @@ -30,6 +22,14 @@ {"id":12,"obj":"label","x":172,"y":75,"w":140,"text":"y=","align":0,"text_rule":"MPU9250#AY","text_rule_format":"y=%6.3f","text_rule_formula":"val / 1000"} {"id":13,"obj":"label","x":172,"y":95,"w":140,"text":"z=","align":0,"text_rule":"MPU9250#AZ","text_rule_format":"z=%6.3f","text_rule_formula":"val / 1000"} +{"page":2,"comment":"---------- Page 2 ----------"} +{"id":0,"bg_color":"#0000A0","bg_grad_color":"#000000","bg_grad_dir":1,"text_color":"#FFFFFF"} + +{"comment":"---------- Wifi status ----------"} +{"id":20,"obj":"lv_wifi_graph","x":257,"y":25,"w":60,"h":40,"radius":0} +{"id":21,"obj":"lv_tasmota_info","x":3,"y":25,"w":251,"h":40,"radius":0} +{"id":22,"obj":"lv_tasmota_log","x":3,"y":68,"w":314,"h":90,"radius":0,"text_font":12} + {"page":3,"comment":"---------- Page 3 - qrcode ----------"} {"id":0,"bg_color":"#0000A0","bg_grad_color":"#000000","bg_grad_dir":1,"text_color":"#FFFFFF"} {"id":1,"obj":"qrcode","qr_text":"https://github.com/arendst/Tasmota","x":85,"y":40,"qr_size":150} @@ -48,4 +48,15 @@ {"id":13,"obj":"img","parentid":10,"src":"A:/haspmota_demo.tapp#watch_ren_sec_240.png","x":110,"y":10} {"id":15,"obj":"label","parentid":10,"x":184,"y":112,"w":18,"h":16,"text":"","align":1,"text_font":"montserrat-14"} -{"comment":"--- Trigger sensors every 2 seconds ---","berry_run":"tasmota.add_cron('*/2 * * * * *', def () tasmota.publish_rule(tasmota.read_sensors()) end, 'oh_every_5_s')"} +{"page":10,"comment":"---------- Page 10 ----------"} +{"id":0,"bg_color":"#0000A0","bg_grad_color":"#000000","bg_grad_dir":1,"text_color":"#FFFFFF"} + +{"id":5,"obj":"label","x":2,"y":30,"w":316,"text":"Berkalium 192.168.x.x ABCDEF\nThe quick brown fox jumps over the lazy dog","text_font":"A:/haspmota_demo.tapp#Berkelium64.lvfont"} +{"id":6,"obj":"label","x":2,"y":55,"w":316,"text":"PrintChar21 192.168.x.x ABCDEF\nThe quick brown fox jumps over the lazy dog","text_font":"A:/haspmota_demo.tapp#PrintChar21.lvfont"} +{"id":7,"obj":"label","x":2,"y":80,"w":316,"text":"Shaston320 192.168.x.x ABCDEF\nThe quick brown fox jumps over the lazy dog","text_font":"A:/haspmota_demo.tapp#Shaston320.lvfont"} +{"id":8,"obj":"label","x":2,"y":105,"w":316,"text":"m5x7 192.168.x.x ABCDEF\nThe quick brown fox jumps over the lazy dog","text_font":"A:/haspmota_demo.tapp#m5x7.lvfont"} +{"id":9,"obj":"label","x":2,"y":130,"w":316,"text":"m3x6 192.168.x.x ABCDEF\nThe quick brown fox jumps over the lazy dog","text_font":"A:/haspmota_demo.tapp#m3x6.lvfont"} + +{"id":99,"obj":"label","x":2,"y":170,"w":316,"text":"unscii-8 192.168.x.x ABCDEF\nThe quick brown fox jumps over the lazy dog","text_font":"unscii-8"} + +{"comment":"--- Trigger sensors every 2 seconds ---","berry_run":"tasmota.add_cron('*/2 * * * * *', def () var s = tasmota.read_sensors() if (s) tasmota.publish_rule(s) end end, 'hm_every_5_s')"}