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

From version 141.1
edited by BoYang Xie
on 2025/01/22 17:35
Change comment: Uploaded new attachment "image-20250122173546-6.png", version {1}
To version 165.1
edited by BoYang Xie
on 2025/02/07 19:53
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -358,17 +358,167 @@
358 358  
359 359  = 4. Example Project 2: LoRaWAN RS485 Alarm =
360 360  
361 -= 5. Adding new panel to the project =
361 += 5. Example Project 3: P2P =
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.
363 363  
364 -**~1. **Design a panel in SquareLine Studio, as shown in Image 5.1 below for reference.
365 +The project can be found at [[this link>>url:https://github.com/dragino/LoRa-HMI-Touch-Screen/tree/main/Example/P2P]].
365 365  
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 +6.3.1 TTN downlink panel data to display in LTS5
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.
505 +
506 +1. downlink DEUI F1A84041000181D4A8
507 +1. downlink Dev Name F24B69746368656E2D467269676531FFFF
508 +1. downlink Sensor Data 5501A4CBBB0A8E085C02 或 5504A4CB01
509 +
510 += 5. The method for adding a new type of panel to the project =
511 +
512 +If you don't have this need, then this part of the content can be ignored.
513 +
514 +1. Design a panel in SquareLine Studio, as shown in Image 5.1 below for reference.
515 +
366 366  [[image:image-20241121113445-1.png||height="584" width="934"]]
367 367  
368 368   Image 5.1: a panel about water_leak
369 369  
370 370  
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.
521 +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.
372 372  
373 373  [[image:image-20241121141120-4.png||height="383" width="795"]]
374 374  
... ... @@ -375,7 +375,7 @@
375 375   Image 5.2: Exported UI files
376 376  
377 377  
378 -**3. Delete and rename some file.** Here are the steps:
528 +3. **Delete and rename some file.** Here are the steps:
379 379  
380 380   Step 1: Delete the 'components' directory.
381 381   Step 2: Delete 'filelist.txt'.
... ... @@ -403,7 +403,7 @@
403 403  
404 404   image 5.6 extra_lib/CMakeLists.txt after add
405 405  
406 -**6. ** **Modify the header files included in the fonts and images directories**.
556 +6.  **Modify the header files included in the fonts and images directories**.
407 407  
408 408  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.
409 409  
... ... @@ -436,7 +436,7 @@
436 436   image 5.12 ui_water_leak/CMakeLists.txt after modification
437 437  
438 438  
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.
589 +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.
440 440  
441 441  [[image:image-20241122094200-23.png]]
442 442  
... ... @@ -454,7 +454,7 @@
454 454  
455 455   image 5.16 ui_water_leak.h (2) before modification
456 456  
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.
607 +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.
458 458  
459 459  _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.
460 460  
... ... @@ -482,7 +482,7 @@
482 482  
483 483   image 5.22 ui_water_leak.c (3) after modification
484 484  
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.
635 +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.
486 486  
487 487  [[image:image-20241122134113-35.png||height="380" width="421"]]
488 488  
... ... @@ -492,7 +492,7 @@
492 492  
493 493  image 5.24 ui_water_leak_events_.h after modification
494 494  
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.
645 +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.
496 496  
497 497  Step1. '#include "ui.h"'~-~->'#include "ui_water_leak.h"'
498 498  
... ... @@ -513,7 +513,7 @@
513 513   image 5.26 ui_water_leak_events_.c after modification
514 514  
515 515  
516 -**12. Modify ui_water_leak_style.c file.**
666 +12. **Modify ui_water_leak_style.c file.**
517 517  
518 518  Step1. '#include "../ui.h"'~-~->#include '"../ui_water_leak.h"'
519 519  
... ... @@ -556,6 +556,7 @@
556 556  
557 557   image 5.32 ui_water_leak_style.c (4)
558 558  
709 +
559 559  [[image:image-20241122154755-49.png||height="864" width="513"]]
560 560  
561 561   image 5.33 ui_water_leak_style.c (4)
... ... @@ -596,22 +596,31 @@
596 596  
597 597  return union_sensor;
598 598  
599 -[[image:image-20241122171211-54.png||height="635" width="792"]]
750 +[[image:image-20250122173546-6.png||height="777" width="922"]]
600 600  
601 601   image 5.38
602 602  
603 603  
604 -**13. Modify sort.c file.**
755 +13. Rest midification in sort.h file.
605 605  
606 -Add a line of code ~-~-'#include "ui_water_leak.h"' as shown in image 5.39 line 16.
757 +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.
607 607  
608 -[[image:image-20241122173718-56.png||height="378" width="579"]]
759 +[[image:image-20250122170230-1.png||height="580" width="513"]]
609 609  
610 - image 5.39 sort.c (1)
761 + image 5.39 sort.h
611 611  
763 +13. **Modify sort.c file.**
764 +
765 +Add a line of code ~-~-'#include "ui_water_leak.h"' as shown in image 5.39 line 26.
766 +
767 +[[image:image-20250122171910-5.png||height="524" width="510"]]
768 +
769 + image 5.40 sort.c (1)
770 +
612 612  There are still some changes need to be done in sort.c, and omit here for the moment.
613 613  
614 614  
774 +
615 615  = 6. FAQ =
616 616  
617 617  == 6.1 ==
... ... @@ -644,7 +644,7 @@
644 644  
645 645  
646 646  * Datasheet
647 -* Source Code
807 +* 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]]
648 648  * Mechinical
649 649  
650 650  = 10. FCC Warning =
1738893226894-758.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +25.6 KB
Content
image-20250207100150-7.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +54.1 KB
Content
image-20250207101415-8.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +17.6 KB
Content
image-20250207101515-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +24.1 KB
Content
image-20250207142334-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +62.0 KB
Content
image-20250207143131-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +48.7 KB
Content
image-20250207144605-12.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +58.1 KB
Content
image-20250207164320-13.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +194.5 KB
Content
image-20250207165702-14.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +78.1 KB
Content
image-20250207170215-15.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +2.6 KB
Content
image-20250207170307-16.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +2.2 KB
Content
image-20250207171650-17.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +11.0 KB
Content
image-20250207171851-18.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +2.5 KB
Content
image-20250207172010-19.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +2.5 KB
Content
image-20250207172246-20.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +2.5 KB
Content
image-20250207172443-21.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +3.9 KB
Content
image-20250207172821-22.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +0 bytes
Content
image-20250207172834-23.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +0 bytes
Content
image-20250207173152-24.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +3.9 KB
Content
image-20250207173159-25.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +3.9 KB
Content
image-20250207173206-26.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +3.9 KB
Content
image-20250207173212-27.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +3.9 KB
Content
image-20250207192107-28.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.xieby
Size
... ... @@ -1,0 +1,1 @@
1 +14.3 KB
Content