Last modified by BoYang Xie on 2025/07/09 11:46

From version 165.2
edited by BoYang Xie
on 2025/02/08 14:35
Change comment: There is no comment for this version
To version 135.1
edited by Dilisi S
on 2024/12/26 18:50
Change comment: Dec 26 edits - part 1

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.xieby
1 +XWiki.pradeeka
Content
... ... @@ -358,169 +358,17 @@
358 358  
359 359  = 4. Example Project 2: LoRaWAN RS485 Alarm =
360 360  
361 -= 5. Example Project 3: P2P =
361 += 5. Adding new panel to the project =
362 362  
363 -The project achieves the function of receiving LoRa P2P messages and displaying them on the screen. The workflow is as follows: A LA66, running a P2P program, sends a message in a particular format via an AT command. Then, the LTS5 receives the message and displays it on the screen.
364 364  
365 -The project can be found at [[this link>>url:https://github.com/dragino/LoRa-HMI-Touch-Screen/tree/main/Example/P2P]].
364 +**~1. **Design a panel in SquareLine Studio, as shown in Image 5.1 below for reference.
366 366  
367 -== 5.1 firmware flashing approach. ==
368 -
369 -5.1.1 Download this project
370 -
371 -5.1.2 Download esp32 firmware flash tool in [[this link>>https://docs.espressif.com/projects/esp-test-tools/en/latest/esp32/production_stage/tools/flash_download_tool.html]].
372 -
373 -5.1.3 Download la66 firmware flash tool in [[this link>>https://www.dropbox.com/scl/fo/9kqeqf6wmet10o9hgxuwa/h?rlkey=4ikrg6kg5v0yjxwhp0i37wrv7&e=1&dl=0]].
374 -
375 -5.1.4 Upload firmware to esp32
376 -
377 -Open flash_download_tool.exe, and then follow the steps below.
378 -
379 -[[image:1738893226894-758.png||height="170" width="176"]]
380 -
381 -[[image:image-20250207100150-7.png||height="476" width="538"]]
382 -
383 -5.1.5 Upload firmware to la66
384 -
385 -Open Dragino_Sensor_Manager_Utility.exe, and then follow the steps below.
386 -
387 -[[image:image-20250207101415-8.png||height="522" width="618"]]
388 -
389 -[[image:image-20250207101515-9.png||height="522" width="618"]]
390 -
391 -== 5.2 AT command and P2P data format ==
392 -
393 -AT+SEND=1,014b69746368656e2d467269676531FFFFA84041000181D4A8**01**A4CBBB0A8E085C02,0,3
394 -
395 -AT+SEND=1,014b69746368656e2d467269676531FFFFA84041000181D4A8**02**A4CB00,0,3
396 -
397 -AT+SEND=1,014b69746368656e2d467269676531FFFFA84041000181D4A8**03**A4CB00,0,3
398 -
399 -AT+SEND=1,014b69746368656e2d467269676531FFFFA84041000181D4A8**04**A4CB00,0,3
400 -
401 -AT+SEND=1,014b69746368656e2d467269676531FFFFA84041000181D4A8**05**A4CB00,0,3
402 -
403 -AT+SEND=1,014b69746368656e2d467269676531FFFFA84041000181D4A8**06**A4CB00,0,3
404 -
405 -**Data format**:
406 -
407 -~1. AT+SEND=1,**01** **4b69746368656e2d467269676531FFFF A84041000181D4A8 01  A4CB  BB0A  8E08  5C02**,0,3
408 -
409 -**01:** encrypt. 1 Byte. 01 ~-~-> no encryption. This 1-byte information is now invalid; simply write 0x01 instead.
410 -
411 -**4b69746368656e2d467269676531FFFF: **Device Name. 16 Bytes. The Device Name for this piece of information is "Kitchen-Frige1," and the subsequent "FFFF" is intended to pad it up to 16 Bytes. The Device Name for this piece of information is 'Kitchen-Frige1,' and the subsequent 'FFFF' is intended to pad it up to 16 Bytes, but it is not necessary as the system can handle shorter names as well.
412 -
413 -**A84041000181D4A8:** Device EUI. 8 Bytes. The last three Bytes will be extracted by the ESP32-S3 and displayed on the screen.
414 -
415 -**01: **Panel Type. 1 Byte. 0x01~-~->Tem & Hum,
416 -
417 - 0x02~-~->Door,
418 -
419 - 0x03~-~->Water Leak,
420 -
421 - 0x04~-~->Occupied,
422 -
423 - 0x05~-~->Button,
424 -
425 - 0x06~-~->Alarm,
426 -
427 -**A4CB: **Battery level//. //2 Bytes. Battery Voltage =0xCBA4&0x3FFF=0x0BA4=2980mV
428 -
429 -**BB0A: **The temperature of the built-in sensor in LHT65N.// //2 Bytes. Temperature:  0x0ABB/100=27.47℃
430 -
431 -**8E08: **The temperature of the External temperature sensor.// //2 Bytes. Temperature:  0x088E/100=21.90℃
432 -
433 -**5C02:**The humidity of the built-in sensor in LHT65N. 2 Bytes. Humidity: 0x025C/10=60.4%
434 -
435 -2. AT+SEND=1,**01**  **4b69746368656e2d467269676531FFFF**  **A84041000181D4A8**  **02  A4CB  00**,0,3
436 -
437 -Specific sections of the data share the same function.
438 -
439 -**00: Status. **1 Byte//. //If Panel Type is 0x02, **Status: 00~-~->Open; 01~-~->Close.**
440 -
441 - If Panel Type is 0x03, **Status: 00~-~->Normal; 01~-~->Water Leaking.**
442 -
443 - If Panel Type is 0x04, **Status: 00~-~->Free; 01~-~->Occupied.**
444 -
445 - If Panel Type is 0x05, **Status: 00~-~->OFF; 01~-~->ON.**
446 -
447 - If Panel Type is 0x06, **Status: 00~-~->OFF; 01~-~->Alarm.**
448 -
449 -== 5.3 Usage ==
450 -
451 -After burning the firmware into LTS5, you can use an LA66 equipped with peer-to-peer firmware to send data to LTS5 via AT commands.
452 -
453 -5.3.1 Connect LA66 to the computer, open Serial Port Utility, and send the AT+CFG instruction to check whether the LA66 has downloaded correct program.
454 -
455 -[[image:image-20250207143131-11.png||height="527" width="547"]]
456 -
457 -5.3.2 Copy an AT instruction example, click "Send" button, then the led in LA66 will flash and the LTS5 will display the LoRa information.
458 -
459 -[[image:image-20250207144605-12.png||height="634" width="548"]]
460 -
461 -= 6. Example Project 4: LoRaWAN_CLASS_C =
462 -
463 -
464 -The project achieves the function of receiving LoRaWAN Class C messages and displaying them on the screen. Note: The Things Network (TTN) needs to enable Class C support, and the LA66 within the LTS5 needs to operate in Class C mode.
465 -
466 -The downlink workflow proceeds as follows: The Things Network (TTN) sends a message in a specific format via downlink. Then, a LoRaWAN gateway relays this message to the LTS5. Finally, the LTS5 receives the message and displays it on its screen.
467 -
468 -The uplink workflow is as follows: The LA66 within the LTS5 sends a LoRaWAN message, for some reason, to a LoRaWAN gateway, which then forwards it to The Things Network (TTN).
469 -
470 -The project can be found at [[this link>>https://github.com/dragino/LoRa-HMI-Touch-Screen/tree/main/Example/LoRaWAN_CLASS_C]].
471 -
472 -== 6.1 firmware flashing approach ==
473 -
474 -The firmware flashing approach is the same as described in section [[5.1>>5.1]].
475 -
476 -== 6.2 flowchart ==
477 -
478 -[[image:image-20250207164320-13.png||height="696" width="1344"]]
479 -
480 -== 6.3 Usage ==
481 -
482 -This section now describes a process about TTN downlink panel data to display on LTS5 screen.
483 -
484 -6.3.1 Connect LA66 to the computer, open Serial Port Utility, and send the AT+CFG instruction to check whether the LA66 has downloaded correct program.
485 -
486 -[[image:image-20250207165702-14.png||height="830" width="563"]]
487 -
488 -6.3.2 Switch to Class C using "AT+CLASS=C", and check the class with "AT+CLASS=?".
489 -
490 -[[image:image-20250207173212-27.png]]
491 -
492 -[[image:image-20250207172246-20.png]]
493 -
494 -6.3.3 Verify LA66's join status (in LTS5) with "AT+NJS=?". If not joined, connect manually to LoRaWAN with "AT+JOIN".
495 -
496 -[[image:image-20250207172010-19.png]]
497 -
498 -[[image:image-20250207171650-17.png]]
499 -
500 -6.3.4 After joining, send a message to TTN, such as "AT+SENDB=01,02,8,05820802581ea0a5", to activate communication.
501 -
502 -[[image:image-20250207192107-28.png]]
503 -
504 -6.3.5 TTN distributes panel data in three batches~-~-DEUI, Dev Name, Sensor Data. The Dev Name, the last three bytes of the DEUI, and the panel type union together ensure the identification of a panel. Data about the same panel type will update the existing panel display, while data about a different panel type will create a new panel display on the LTS5 screen.
505 -
506 -There is a example for TTN downlink.
507 -
508 -1. downlink DEUI F1A84041000181D4A8
509 -1. downlink Dev Name F24B69746368656E2D467269676531FFFF
510 -1. downlink Sensor Data 5501A4CBBB0A8E085C02 or 5504A4CB01. Both of them are vaild formats for LTS5. Note: 0x55 as prefix and any other prefix except 0xF1, 0xF2, 0xF3 means downlink is Sensor Data.
511 -
512 -= 5. The method for adding a new type of panel to the project =
513 -
514 -If you don't have this need, then this part of the content can be ignored.
515 -
516 -1. Design a panel in SquareLine Studio, as shown in Image 5.1 below for reference.
517 -
518 518  [[image:image-20241121113445-1.png||height="584" width="934"]]
519 519  
520 520   Image 5.1: a panel about water_leak
521 521  
522 522  
523 -2. **Export the UI file: **You need to adjust the export path first, then click '**Export -> Export UI Files**' on the menu bar. This step was introduced earlier. After that, you can get the UI files as shown in Image 5.2.
371 +**2. Export the UI file: **You need to adjust the export path first, then click '**Export -> Export UI Files**' on the menu bar. This step was introduced earlier. After that, you can get the UI files as shown in Image 5.2.
524 524  
525 525  [[image:image-20241121141120-4.png||height="383" width="795"]]
526 526  
... ... @@ -527,7 +527,7 @@
527 527   Image 5.2: Exported UI files
528 528  
529 529  
530 -3. **Delete and rename some file.** Here are the steps:
378 +**3. Delete and rename some file.** Here are the steps:
531 531  
532 532   Step 1: Delete the 'components' directory.
533 533   Step 2: Delete 'filelist.txt'.
... ... @@ -555,7 +555,7 @@
555 555  
556 556   image 5.6 extra_lib/CMakeLists.txt after add
557 557  
558 -6.  **Modify the header files included in the fonts and images directories**.
406 +**6. ** **Modify the header files included in the fonts and images directories**.
559 559  
560 560  Open the **fonts/ui_font_Font12.c** file, as shown in Image 5.7, and change **#include "../ui.h"** to **#include "../ui_water_leak.h"**. The modified file is shown in Image 5.8. Other font files need to be modified in the same way.
561 561  
... ... @@ -588,7 +588,7 @@
588 588   image 5.12 ui_water_leak/CMakeLists.txt after modification
589 589  
590 590  
591 -8. Modify the **ui_water_leak.h** file. Images 5.13 and 5.14 show the code before modification, while Images 5.15 and 5.16 show the code after modification.
439 +**8. **Modify the **ui_water_leak.h** file. Images 5.13 and 5.14 show the code before modification, while Images 5.15 and 5.16 show the code after modification.
592 592  
593 593  [[image:image-20241122094200-23.png]]
594 594  
... ... @@ -606,7 +606,7 @@
606 606  
607 607   image 5.16 ui_water_leak.h (2) before modification
608 608  
609 -9. **Modify ui_water_leak.c file.** The image 5.17, 5.18, 5.19 show the code before modification, and the image 5.20, 5.21, 5.22 show the code after modification.
457 +**9. Modify ui_water_leak.c file.** The image 5.17, 5.18, 5.19 show the code before modification, and the image 5.20, 5.21, 5.22 show the code after modification.
610 610  
611 611  _ui_flag_modify( ((lv_obj_t *)(e->user_data)), LV_OBJ_FLAG_HIDDEN, _UI_MODIFY_FLAG_TOGGLE);  This code replaces 4 lines of code in ui_water_leak.c, so it is pasted here for convenience.
612 612  
... ... @@ -634,7 +634,7 @@
634 634  
635 635   image 5.22 ui_water_leak.c (3) after modification
636 636  
637 -10. **Modify ui_water_leak_events.h file.** The image 5.23 show the code before modification, and the image 5.24 show the code after modification.
485 +**10. Modify ui_water_leak_events.h file.** The image 5.23 show the code before modification, and the image 5.24 show the code after modification.
638 638  
639 639  [[image:image-20241122134113-35.png||height="380" width="421"]]
640 640  
... ... @@ -644,7 +644,7 @@
644 644  
645 645  image 5.24 ui_water_leak_events_.h after modification
646 646  
647 -11.** Modify ui_water_leak_events.c file.** The image 5.25 show the code before modification, and the image 5.26 show the code after modification.
495 +**11. Modify ui_water_leak_events.c file.** The image 5.25 show the code before modification, and the image 5.26 show the code after modification.
648 648  
649 649  Step1. '#include "ui.h"'~-~->'#include "ui_water_leak.h"'
650 650  
... ... @@ -665,7 +665,7 @@
665 665   image 5.26 ui_water_leak_events_.c after modification
666 666  
667 667  
668 -12. **Modify ui_water_leak_style.c file.**
516 +**12. Modify ui_water_leak_style.c file.**
669 669  
670 670  Step1. '#include "../ui.h"'~-~->#include '"../ui_water_leak.h"'
671 671  
... ... @@ -708,7 +708,6 @@
708 708  
709 709   image 5.32 ui_water_leak_style.c (4)
710 710  
711 -
712 712  [[image:image-20241122154755-49.png||height="864" width="513"]]
713 713  
714 714   image 5.33 ui_water_leak_style.c (4)
... ... @@ -749,31 +749,22 @@
749 749  
750 750  return union_sensor;
751 751  
752 -[[image:image-20250122173546-6.png||height="777" width="922"]]
599 +[[image:image-20241122171211-54.png||height="635" width="792"]]
753 753  
754 754   image 5.38
755 755  
756 756  
757 -13. Rest midification in sort.h file.
604 +**13. Modify sort.c file.**
758 758  
759 -In image 5.39 as below, we can see "WATER_LEAK_TYPE" at line 24 and water leak switch status definition at line 32,33, and these are what we need to add in sort.h.
606 +Add a line of code ~-~-'#include "ui_water_leak.h"' as shown in image 5.39 line 16.
760 760  
761 -[[image:image-20250122170230-1.png||height="580" width="513"]]
608 +[[image:image-20241122173718-56.png||height="378" width="579"]]
762 762  
763 - image 5.39 sort.h
610 + image 5.39 sort.c (1)
764 764  
765 -13. **Modify sort.c file.**
766 -
767 -Add a line of code ~-~-'#include "ui_water_leak.h"' as shown in image 5.39 line 26.
768 -
769 -[[image:image-20250122171910-5.png||height="524" width="510"]]
770 -
771 - image 5.40 sort.c (1)
772 -
773 773  There are still some changes need to be done in sort.c, and omit here for the moment.
774 774  
775 775  
776 -
777 777  = 6. FAQ =
778 778  
779 779  == 6.1 ==
... ... @@ -806,7 +806,7 @@
806 806  
807 807  
808 808  * Datasheet
809 -* Source Code: [[dragino/LoRa-HMI-Touch-Screen: Open Source LoRa / LoRaWAN HMI Touch Screen Project>>url:https://github.com/dragino/LoRa-HMI-Touch-Screen/tree/main]]
647 +* Source Code
810 810  * Mechinical
811 811  
812 812  = 10. FCC Warning =
1738893226894-758.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -25.6 KB
Content
image-20250122170230-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -77.3 KB
Content
image-20250122171809-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -51.1 KB
Content
image-20250122171825-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -51.1 KB
Content
image-20250122171832-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -51.1 KB
Content
image-20250122171910-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -51.1 KB
Content
image-20250122173546-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -200.4 KB
Content
image-20250207100150-7.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -54.1 KB
Content
image-20250207101415-8.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -17.6 KB
Content
image-20250207101515-9.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -24.1 KB
Content
image-20250207142334-10.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -62.0 KB
Content
image-20250207143131-11.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -48.7 KB
Content
image-20250207144605-12.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -58.1 KB
Content
image-20250207164320-13.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -194.5 KB
Content
image-20250207165702-14.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -78.1 KB
Content
image-20250207170215-15.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -2.6 KB
Content
image-20250207170307-16.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -2.2 KB
Content
image-20250207171650-17.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -11.0 KB
Content
image-20250207171851-18.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -2.5 KB
Content
image-20250207172010-19.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -2.5 KB
Content
image-20250207172246-20.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -2.5 KB
Content
image-20250207172443-21.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -3.9 KB
Content
image-20250207172821-22.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -0 bytes
Content
image-20250207172834-23.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -0 bytes
Content
image-20250207173152-24.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -3.9 KB
Content
image-20250207173159-25.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -3.9 KB
Content
image-20250207173206-26.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -3.9 KB
Content
image-20250207173212-27.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -3.9 KB
Content
image-20250207192107-28.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.xieby
Size
... ... @@ -1,1 +1,0 @@
1 -14.3 KB
Content