새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


★ HA작업)ESP32 에 인체감지 LD2410c LD2410B 2450 를 HAOS esphome 연결작업정보

♨ 카랜더 일정 : 2024년04월06일
  • 링크

  • 첨부

  • 컨텐츠 정보

    본문

    ● HA작업)ESP32 에  인체감지  LD2410c LD2410B  2450 를 HAOS esphome 연결작업정보

    pir과 mmwave의 차이는 

    pir는

    on off 동작 시간을 주어  on off 되나 연속 재실상태를 감지가 어려우며

    mmvave 을 사용하면  재실감지가 바로 on 후 off 되고 

    장점으로 재실시 연속으로 재실감지 동작 계속 on 상태 유지 합니다


    제일 쓸만한  mmwave는  5v용 ld2410c 입니다.

    자동화는 
     When esp32_ld2410c_ip86 Detection Distance are below 200  >> 200 이하 서재불켜기
     When esp32_ld2410c_ip86 Detection Distance are above 201 <<< 201 이상 서재불 끄기

    주) 3.3v 연결시  열폭주  발생 합니다.

    3232235521_1714921093.2247.png

    을 추천 하며 

    적용가능한  소스중에 

    https://github.com/rainchi/ESPHome-LD2410/blob/main/ld2410.yaml

    https://cafe.naver.com/koreassistant/14129

    소스를  참조 합니다


    제품 구입정보

    3232235521_1713842671.769.png

    3232235521_1714890780.6384.png

      주) pin 의 피치가 너무 작은것 구입시 주의 >> 다음  ld2420c(5V용) 구입 추천 합니다.


    ld2410s는 3.3v용입니다 (  5v 연결 테스트후 작동불능 됬음)

    비추천 합니다.

    LD2410C 24GHz 휴먼 프레전스 센서 FMCW 웨이브 레이더 유도 모듈 바디 하트 비트 감지 센서 고정밀

    https://ko.aliexpress.com/item/1005005400130647.html?

    5V용 입니다 >> 3.3v에 잘못 연결시 열 발생이 심합니다.

    3232235521_1714889598.1764.png

    3232235521_1714889663.7192.png


    LD2450 pin 정보

    3232235521_1720076040.3581.png



    esp32보드의 pin정보

    아두이노 ESP32 ESP-32 ESP32-WROOM-32 30PIN 2코어 와이파이-WIFI 블루투스-BlueTooth USB C-Type 

    3232235521_1719496673.6353.png

    3232235521_1713843075.7232.png

    3232235521_1713848802.4669.png

    https://www.youtube.com/watch?v=H1qk0tn6_5M


    3232235521_1713847422.9512.png


    3232235521_1713844214.5074.png

    연결정보)

    1)실물을 배송제품을 정확히  pin 정보를 확인 해야 합니다

    2) rx와 tx의 상대 pin으로  gpio1,3 pin연결

    3) 감지 신호 연결 gpio5

    4) 연결후 자동화 TTS로 연결 상태 멀리에서 확인 방송 확인


     ESP32-S3 개발 키트에 ld2410s  작업 은  5를 사용 불가능

    Espressif Systems ESP32-S3 개발 키트는 완전한 Wi-Fi 및 Bluetooth LE 기능을 통합하는 범용 Wi-Fi + BLUETOOTH® LE MCU 모듈인 ESP32-S3-WROOM-1 또는

    이보드 구입시 주의점은 5v를 사용 불가능 합니다.

    제품 정보

    https://www.mouser.vn/new/espressif/espressif-esp32-s3-dev-kits?_gl=1*xy4k95*_ga*MzMxODA1Njg3LjE3MTI0MDMwMDU.*_ga_15W4STQT4T*MTcxMjQwMzAwNC4xLjAuMTcxMjQwMzAwNS41OS4wLjA.

    https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32

    3232235521_1714889960.5701.png


    https://www.manualslib.com/manual/2354800/Espressif-Esp32-S3-Devkitc-1.html?page=7#manual

    3232235521_1719761003.4412.png


    ESP32-S3 N16R8 개발 보드, WS2812 LED, CH340, C타입, ESP32, S3, BT, 2.4G 는 5V 사용가능

    https://ko.aliexpress.com/item/1005006370275059.html?

    3232235521_1716691096.5228.png

    3232235521_1722527505.7357.png

    1)ESPRESSIF ESP32-WROOM-32 basic 추천

     LD2410B + LED

    3232235521_1713934727.2178.png

    3232235521_1714890426.6439.png

    연결작업

    3232235521_1715347090.0527.png

    3232235521_1719758260.6188.png

    LED 연결은 2V 20MA 1.3V으로 각각 앞뒤애 220옴 연결 사용 적당


    PIR 감지 센서는 SR501을 추천 합니다.

    ld2410c 사용시 불필요합니다.

    3232235521_1715343244.2721.png

    HC-SR602 는 시간 감더 조절 못함

    연결 gpio23 

    3232235521_1714024040.9878.png

    HC-SR501

    1. 작동 전압: DC5V ~ 20V
    2. 정적 전력 소비: 65
    3. 출력 레벨: 높은 3.3V, 낮은 0V
    4. 지연 시간: 조정 가능 (0.3 초 ~ 18 초)
    5. 금수 시간: 0.2 초
    6. 트리거 모드: l 반복 할 수 없음, h 반복 가능, h 기본값
    7. 유도 범위: 120 도 원뿔 각도 미만, 최대 7 미터
    8. 작업 온도:-15 ~ + 70
    9.PCB 치수: 32*24mm, 나사 구멍 28mm, 나사 직경 2mm, 렌즈 치수 유도: (직경): 23mm (기본값)

    3232235521_1715342974.1944.png



    3232235521_1715342707.7327.png

    =========  ================

    WeActStudio.ESP32C3CoreBoard

    https://github.com/WeActStudio/WeActStudio.ESP32C3CoreBoard.git

    위액트 스튜디오 ESP32-C3FH4 코어 보드 에 설치후 에러발생

    >> 듀얼코어 esp32 basic이 안정적임

    3232235521_1715059290.8212.png

    https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf


    제일 쓸만한  5v용  인체감지 ld2410c 입니다.(추천)

    3232235521_1714921093.2247.png

    3232235521_1714889598.1764.png

    3232235521_1715068697.6283.png

    3232235521_1715068737.9689.png

    3232235521_1715068761.7744.png


    최종 구성 추천은

    아두이노 ESP32 ESP-32 ESP32-WROOM-32 30PIN 2코어 와이파이-WIFI 블루투스-BlueTooth USB C-Type 


    3232235521_1712600550.1883.png

    제일 쓸만한 재실감지는  5v용 ld2410c 입니다.

    3232235521_1714921093.2247.png

    3232235521_1714889598.1764.png

    # ===========================================  #
    # ESP32  pin
    # mmwave GPIO2
    # ledc  GPIO4
    # tx_pin: GPIO1
    # rx_pin: GPIO3
    # 2410_pir GPIO15

    # ESP32-C3FH4  pin
    # mmwave GPIO2
    # ledc  GPIO5
    # tx_pin: GPIO21
    # rx_pin: GPIO20
    # ===========================================  #

    전체 구성은 다음과 같이 나옴니다

    3232235521_1715352799.2986.png


    안드로이드 앱에서 지원 입니다

    3232235521_1715353100.1182.png

    3232235521_1715353127.7932.png


    소스에서 다음조건으로 install 사용 테스트 권고 합니다


    테스트 사용시 소스 

    logger:
      baud_rate: 0


    평상시 사용시 >> 에러 를 줄이는 방법 입니다

    logger:
      level: ERROR
      baud_rate: 0


    자동화 구성은

    binary_sensor:
      - platform: ld2410
        has_target:
          name: Presence (off PIR)
        has_moving_target:
          name: Moving Target (on PIR)
        has_still_target:
          name: Still Target
        out_pin_presence_status:
          name: out pin presence status


    제가 사용한 소스는 링크참조  적용중인 소스는 첨부 참조 저장 합니다

    s:\esphome\esp32-ld2410s-door_IP86.yaml

    자동화는 

     When esp32_ld2410c_ip86 Detection Distance are below 200  >> 200 이하 서재불켜기

     When esp32_ld2410c_ip86 Detection Distance are above 201 <<< 201 이상 서재불 끄기

    3232235521_1716004037.6736.png


    3232235521_1716003968.9715.png


    <거리감도및 반응감도  조정 하기 >

    https://cafe.naver.com/esphomecraft/203

    에 설명 참조 드립니다


    1)  거리0.2m와 0.75m이 있으며 게이트는 0~8까지로 2개의 곱으로 감지

       게이트를 5로 설정후 거리를 변경 인식 범위 확인합니다.

    1-1)  0.2 m * 5 = 1m 에서 감지

    1-2) 0.75m * 5 = 3.75m 에서 감지

    2) 반응 감도는 신호 감도 (threshold % ) 이상시 인식 입니다

      ===> 오감지 및 에러 발생시 높게 60% 설정 합니다

    3232235521_1724590423.0625.png

    https://esphome.io/components/sensor/ld2410.html

    3232235521_1724592358.6621.png

    LD2410C 인체감지 센서의 구성 설정에서 g0부터 g8까지는 감지 영역을 나타내는 구역입니다. 이 구역들은 3차원 공간에서 센서가 감지할 수 있는 범위를 나누어 설명합니다.

    • g0: 센서에 가장 가까운 영역입니다. 이 영역은 센서 바로 앞의 짧은 거리에서 움직임을 감지합니다.
    • g1: g0보다 조금 더 먼 거리의 영역입니다.
    • g2: g1보다 더 먼 거리의 영역입니다.
    • g3: g2보다 더 먼 거리의 영역입니다.
    • g4: g3보다 더 먼 거리의 영역입니다.
    • g5: g4보다 더 먼 거리의 영역입니다.
    • g6: g5보다 더 먼 거리의 영역입니다.
    • g7: g6보다 더 먼 거리의 영역입니다.
    • g8: 센서에서 가장 먼 거리의 영역입니다.

    이렇게 각 구역은 센서로부터의 거리에 따라 나뉘며, 각 구역에서 감지된 움직임의 에너지를 측정하여 센서가 인체의 움직임을 감지합니다12.

    이해가 되셨나요? 추가로 궁금한 점이 있으면 언제든지 말씀해 주세요!

    1: LD2410 Sensor — ESPHome 2: DIY Presence Sensor with HLK-LD2410 and ESPHome

    자세한 정보

    [ 추가 정보 ... 더보기) ]
    뷰PDF 1,2



    office view

    관련자료

    댓글목록

    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    # left-top no1 reversclock
    # #no 15 = 5V (좌하단 상으로1)
    # #no 16 = 3.3v (우하단 상으로1)
    # #no 14(좌하단 상으로 2) = GND
    # #no 17(우하단 상으로 2) = GND
    # #no 21 = GPIO16
    # #no 5 = GPIO35
    # #no 10 = GPIO27 2410의 light  ??? GPIO19

    # 28 GPIO1 TXDO
    # 27 GP103 RXDO

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    ESP32 보드와 LD2410S 센서를 연결하는 방법은 다음과 같습니다:

    ESP32의 RX 핀을 LD2410S의 TX 핀에 연결합니다.
    ESP32의 TX 핀을 LD2410S의 RX 핀에 연결합니다.
    이렇게 하면 ESP32 보드와 LD2410S 센서 간의 통신이 가능해집니다. 하지만, 핀 배치가 보드에 따라 다를 수 있으므로, 사용하시는 보드의 문서를 참조하시는 것이 좋습니다12.

    참고로, ESP32와 LD2410S 센서를 사용하여 프로젝트를 진행하실 때는 해당 장치들의 라이브러리와 예제 코드를 참조하시는 것이 도움이 될 수 있습니다12. 특히, LD2410S 센서는 주파수를 이용하여 정지한 물체와 이동하는 물체에 대한 거리를 측정하는 모듈로, 다양한 응용이 가능합니다1.

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    저언상님의 댓글

    no_profile 저언상 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (59.♡.212.197) 작성일

    잘부탁드립니다

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    In file included from src/main.cpp:120:
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setConfigMode(bool)':
    src/uart_read_line_sensor_ld2410v3.h:106:31: warning: narrowing conversion of '(confenable ? 255 : 254)' from 'int' to 'char' inside { } [-Wnarrowing]
        char cmd[2] = {confenable ? 0xFF : 0xFE,0x00};
                        ~~~~~~~~~~~^~~~~~~~~~~~~
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setEngineeringMode(bool)':
    src/uart_read_line_sensor_ld2410v3.h:156:30: warning: narrowing conversion of '(engenable ? 98 : 99)' from 'int' to 'char' inside { } [-Wnarrowing]
        char cmd[2] = {engenable ? 0x62 : 0x63,0x00};
                        ~~~~~~~~~~^~~~~~~~~~~~~
    In file included from src/main.cpp:120:
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setBaudrate(int)':
    src/uart_read_line_sensor_ld2410v3.h:192:33: warning: narrowing conversion of 'index' from 'int' to 'char' inside { } [-Wnarrowing]
        char value[2] = {index, 0x00};
                                    ^

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    https://community.home-assistant.io/t/mmwave-wars-one-sensor-module-to-rule-them-all/453260/129

    uart:
      id: uart1
      rx_pin: GPIO13 #(D7)
      tx_pin: GPIO15  #(D8)
      baud_rate: 256000
      data_bits: 8
      stop_bits: 1
      parity: NONE

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    In file included from src/main.cpp:195:
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setEngineeringMode(bool)':
    src/uart_read_line_sensor_ld2410v3.h:157:30: warning: narrowing conversion of '(engenable ? 98 : 99)' from 'int' to 'char' inside { } [-Wnarrowing]
        char cmd[2] = {engenable ? 0x62 : 0x63,0x00};
                        ~~~~~~~~~~^~~~~~~~~~~~~
    In file included from src/main.cpp:195:
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setBaudrate(int)':
    src/uart_read_line_sensor_ld2410v3.h:193:33: warning: narrowing conversion of 'index' from 'int' to 'char' inside { } [-Wnarrowing]
        char value[2] = {index, 0x00};
                                    ^
    Linking .pioenvs/esp32-s3-8m-ld2410s/firmware.elf

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    In file included from src/main.cpp:195:
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setEngineeringMode(bool)':
    src/uart_read_line_sensor_ld2410v3.h:157:30: warning: narrowing conversion of '(engenable ? 98 : 99)' from 'int' to 'char' inside { } [-Wnarrowing]
        char cmd[2] = {engenable ? 0x62 : 0x63,0x00};
                        ~~~~~~~~~~^~~~~~~~~~~~~
    In file included from src/main.cpp:195:
    src/uart_read_line_sensor_ld2410v3.h: In member function 'void LD2410::setBaudrate(int)':
    src/uart_read_line_sensor_ld2410v3.h:193:33: warning: narrowing conversion of 'index' from 'int' to 'char' inside { } [-Wnarrowing]
        char value[2] = {index, 0x00};
                                    ^
    Linking .pioenvs/esp32-s3-8m-ld2410s/firmware.elf
    의 에러를  해결해주세요

    Copilot
    이 코드에서 발생하는 경고는 'narrowing conversion’에 관한 것입니다. 이는 데이터 타입을 더 넓은 범위에서 더 좁은 범위로 변환하려고 할 때 발생합니다. 이 경우, ‘int’ 타입을 ‘char’ 타입으로 변환하려고 하면서 문제가 발생했습니다.

    setEngineeringMode(bool) 함수에서, engenable ? 0x62 : 0x63 표현식은 int 타입의 값을 반환하지만, 이를 char 타입의 배열에 저장하려고 합니다.
    setBaudrate(int) 함수에서는 index라는 int 타입의 값을 char 타입의 배열에 저장하려고 합니다.
    이러한 narrowing conversion은 데이터 손실을 초래할 수 있으므로, 컴파일러는 이를 경고로 알려줍니다. 이를 해결하려면, 적절한 캐스팅을 사용하여 명시적으로 타입 변환을 수행해야 합니다. 예를 들어, char cmd[2] = {(char)(engenable ? 0x62 : 0x63), 0x00};와 같이 작성할 수 있습니다. 이렇게 하면 컴파일러에게 의도적으로 타입 변환을 수행하고 있음을 알려줄 수 있습니다. 그러나 이렇게 하면 데이터 손실의 가능성이 여전히 있으므로, 주의가 필요합니다. 이러한 변환을 수행하기 전에, 변환된 값이 여전히 원하는 범위 내에 있는지 확인해야 합니다.

    마지막으로, “Linking .pioenvs/esp32-s3-8m-ld2410s/firmware.elf” 메시지는 컴파일 과정이 성공적으로 완료되었음을 나타냅니다. 이는 코드가 성공적으로 컴파일되었으며, 이제 실행 파일을 생성하는 단계에 도달했음을 의미합니다. 이 메시지는 보통 컴파일 경고나 에러가 없을 때 출력됩니다. 그러나 이 경우에는 경고가 있었지만, 이 경고가 치명적이지 않아 컴파일이 계속 진행되었음을 나타냅니다. 이 경고를 해결하면 코드의 품질을 더욱 향상시킬 수 있습니다.

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    # ======================================================================
     # 2024_0424_1002_38
     # \\192.168.0.35\config\esphome\esp32-s3-ld2410s.yaml
     # ble및 WIFI 센서를 추가하지 마세요 2024_0424_0956_04
     # 본소스는 https://community.home-assistant.io/t/mmwave-wars-one-sensor-module-to-rule-them-all/453260/2
     # uart_read_line_sensor_ld2410v3.h 에러 대응 타입 변환을 (char) 수행해야 합니다.
     # 예를 들어, char cmd[2] = {(char)(engenable ? 0x62 : 0x63), 0x00}; 형식으로 변경
     # ============================================

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    https://github.com/rainchi/ESPHome-LD2410/blob/main/ld2410.yaml
    소스 적용시
    =============================

    In file included from src/main.cpp:125:
    src/ld2410_uart_rainchi.h: In member function 'void LD2410::setConfigMode(bool)':
    src/ld2410_uart_rainchi.h:217:27: warning: narrowing conversion of '(enable ? 255 : 254)' from 'int' to 'char' inside { } [-Wnarrowing]
        char cmd[2] = {enable ? 0xFF : 0xFE, 0x00};
                        ~~~~~~~^~~~~~~~~~~~~
    src/ld2410_uart_rainchi.h: In member function 'void LD2410::setEngineeringMode(bool)':
    src/ld2410_uart_rainchi.h:245:27: warning: narrowing conversion of '(enable ? 98 : 99)' from 'int' to 'char' inside { } [-Wnarrowing]
        char cmd[2] = {enable ? 0x62 : 0x63, 0x00};
                        ~~~~~~~^~~~~~~~~~~~~
    In file included from src/main.cpp:125:
    src/ld2410_uart_rainchi.h: In member function 'void LD2410::setBaudrate(int)':
    src/ld2410_uart_rainchi.h:273:33: warning: narrowing conversion of 'index' from 'int' to 'char' inside { } [-Wnarrowing]
        char value[2] = {index, 0x00};
                                    에러 정수처리 해주세요
    Copilot
    코드에서 발생하는 경고는 'narrowing conversion’으로, 이는 특정 타입의 값을 다른 타입으로 변환하려고 할 때 발생합니다. 이 경우에는 int 타입을 char 타입으로 변환하려고 하면서 문제가 발생했습니다.

    이를 해결하기 위해 static_cast<char>를 사용하여 명시적으로 형 변환을 수행할 수 있습니다. 아래는 수정된 코드입니다:

    src/ld2410_uart_rainchi.h: In member function 'void LD2410::setConfigMode(bool)':
    char cmd[2] = {static_cast<char>(enable ? 0xFF : 0xFE), 0x00};

    src/ld2410_uart_rainchi.h: In member function 'void LD2410::setEngineeringMode(bool)':
    char cmd[2] = {static_cast<char>(enable ? 0x62 : 0x63), 0x00};

    src/ld2410_uart_rainchi.h: In member function 'void LD2410::setBaudrate(int)':
    char value[2] = {static_cast<char>(index), 0x00};

    이렇게 하면 int를 char로 안전하게 변환할 수 있습니다. 그러나 이렇게 하면 데이터 손실이 발생할 수 있으므로 주의해야 합니다. 예를 들어, char는 일반적으로 -128에서 127까지의 값을 저장할 수 있으므로, 이 범위를 벗어나는 int 값은 잘릴 수 있습니다. 이 점을 염두에 두고 코드를 작성해야 합니다.

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    GPIO2가 감지되면 LED_GPIO5_sw가 켜지고, 감지되지 않으면 LED_GPIO5_sw가 꺼지도록 설정하려면, on_press와 on_release 트리거를 사용하여 구성할 수 있습니다. 아래는 수정된 코드입니다:

    output:
      - platform: gpio
        pin:
          number: GPIO5
          inverted: true
        id: led_output

    light:
      - platform: binary
        name: "mmwave_led"
        output: led_output
        id: LED_GPIO5_sw

    binary_sensor:
      - platform: gpio
        name: "2410_mmwave_G2"
        id: mmwave
        device_class: occupancy
        pin:
          number: GPIO2
          mode: INPUT_PULLUP
        on_press:
          then:
            - light.turn_on: LED_GPIO5_sw
        on_release:
          then:
            - light.turn_off: LED_GPIO5_sw

    이 설정은 GPIO2 핀이 감지되면 (즉, 스위치가 눌릴 때) LED_GPIO5_sw 라이트가 켜지고, 감지되지 않으면 (즉, 스위치가 떼어질 때) LED_GPIO5_sw 라이트가 꺼집니다12. 이 코드를 ESPHome 구성 파일에 추가하면 됩니다. 추가적인 질문이 있으시면 언제든지 알려주세요! ????

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    github에 있는 소스는 먹통 증상 발생

    카페내 자료 로 소스 변경
    https://cafe.naver.com/koreassistant/14129

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    HLK-LD2410C 24Ghz 인간 존재 유도 거리 감지 레이더 센서 모듈 지원 BLE/UART 조정 매개변수
    https://www.hlktech.net/index.php?id=1095

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    https://community.home-assistant.io/t/ld2410-esphome-tips/477058/650?page=21
     설정에서 때때로 8초 동안 거짓 부정이 발생하는 것을 발견했습니다. 때로는 교정이 부적절하여 거짓 긍정이 발생하는 경우도 있습니다.

    이를 완화하기 위해 스틸 센서의 켜고 끄는 지연 시간을 두었습니다.

    binary_sensor:
        has_still_target:
          name: "mmWave: Still Target"
          filters:
            - delayed_on: 15s
            - delayed_off: 15s
    이것이 도움이 될지는 모르겠지만, 여기서는 그냥 버리세요.
    이렇게 하면 센서의 반응이 느려지지만 오탐 및 부정에 대한 탄력성이 높아집니다.

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    ESP32-S3-DevKitC-1에서 esphome을 사용하여 RGB LED를 켜는 방법은 다음과 같습니다:
    https://www.mouser.kr/pdfDocs/Espressif-ESP32-S3-User-Guide-devkitc-1-26-22.pdf

    light:
      - platform: esp32_rmt_led_strip
        rgb_order: RBG
        pin: GPIO48
        num_leds: 3
        rmt_channel: 2
        chipset: ws2812
        name: "My Light"

    위의 코드는 ESP32-S3-DevKitC-1의 RGB LED를 흰색으로 켜는 방법을 보여줍니다1.

    그러나, RGB LED를 다른 색으로 켜려면, 다음과 같이 코드를 수정할 수 있습니다:

    light:
      - platform: esp32_rmt_led_strip
        rgb_order: RBG
        pin: GPIO48
        num_leds: 3
        rmt_channel: 2
        chipset: ws2812
        name: "My Light"
        effects:
          - addressable_color_wipe:
              name: Color Wipe
              colors:
                - red: 100%
                  green: 0%
                  blue: 0%
                  white: 0%
                  transition_length: 1s
                  add_led_interval: 100ms

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    ESPresense로 재실판단
    https://cafe.naver.com/koreassistant/14606

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일
    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    ESPRESSIF ESP32-VROOM-32D

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    substitutions :
      name: senser-bady-ld2410-ip98
      device_description: "esp32-s3-devkitc-1 n16r8 ld2410 ip98"

    esphome:
      name: ${name}
      comment: ${device_description}

    esp32:
      board: esp32-s3-devkitc-1
      framework:
        type: arduino

    api:
      encryption:
        key: "2XK4kcl2cbva65HdqEGuhKhgbn/+WChPEsiA4Eh2X0w="

    ota:
      - platform: esphome
        password: "be09934dbd1b3ba4444f76ea696ad898"

    wifi:
      ssid: !secret wifi_ssid
      password: !secret wifi_password
      power_save_mode: LIGHT 
      manual_ip:
        static_ip: 192.168.0.98
        gateway: 192.168.0.1
        subnet: 255.255.255.0
        dns1: 8.8.8.8
        dns2: 8.8.4.4
      ap:
        ssid: "Esp32-N16R8-Ld2450"
        password: "PKTuadK1Fvzt"

    captive_portal:

    # =============================================================
    # ESP32-n16r8  pin
    # mmwave GPIO4
    # pir:  GPIO2
    # tx_pin: 17
    # rx_pin: 18
    # https://esphome.io/components/logger.html#logger-component
    # =============================================================
    logger:
      level: debug
      baud_rate: 0 

    web_server:
      port: 80
      version: 2
      include_internal: true
       
    mqtt:
      broker: 192.168.0.35
      username: mqtt_user
      password: mqtt_pass

    uart:
      tx_pin: GPIO17
      rx_pin: GPIO18
      baud_rate: 256000
      parity: NONE
      stop_bits: 1

    ld2410:
      id: my_ld2410

    binary_sensor:
      - platform: status
        name: "${name} Connection Status"
     
      - platform: ld2410
        has_target:
          name: Presence
        has_moving_target:
          name: Moving Target
        has_still_target:
          name: Still Target
          filters:
            - delayed_on: 15s
            - delayed_off: 15s

        out_pin_presence_status:
          name: out pin presence status

      - platform: gpio
        device_class: PRESENCE
        pin:
          number: GPIO4
          mode: INPUT_PULLUP
          # inverted: true
        name: mmwave_ld2410c_out
        filters:
          - delayed_off: 10ms
        on_press:
          then:
            - light.turn_on: MyLight48_id
        on_release:
          then:
            - light.turn_off: MyLight48_id

    sensor:
      - platform: ld2410
        light:
          name: light
        moving_distance:
          name: Moving Distance
        still_distance:
          name: Still Distance
        moving_energy:
          name: Move Energy
        still_energy:
          name: Still Energy
        detection_distance:
          name: Detection Distance
        g0:
          move_energy:
            name: g0 move energy
          still_energy:
            name: g0 still energy
        g1:
          move_energy:
            name: g1 move energy
          still_energy:
            name: g1 still energy
        g2:
          move_energy:
            name: g2 move energy
          still_energy:
            name: g2 still energy
        g3:
          move_energy:
            name: g3 move energy
          still_energy:
            name: g3 still energy
        g4:
          move_energy:
            name: g4 move energy
          still_energy:
            name: g4 still energy
        g5:
          move_energy:
            name: g5 move energy
          still_energy:
            name: g5 still energy
        g6:
          move_energy:
            name: g6 move energy
          still_energy:
            name: g6 still energy
        g7:
          move_energy:
            name: g7 move energy
          still_energy:
            name: g7 still energy
        g8:
          move_energy:
            name: g8 move energy
          still_energy:
            name: g8 still energy

      - platform: uptime
        name: Uptime Sensor   

    # sensor:
      - platform: wifi_signal
        name: "WiFi Signal dB"
        id: wifi_signal_db
        update_interval: 60s
        entity_category: "diagnostic"

      - platform: copy
        source_id: wifi_signal_db
        name: "WiFi Signal Percent"
        filters:
          - lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
        unit_of_measurement: " %"
        entity_category: "diagnostic"
        device_class: ""
     

    switch:
      - platform: restart
        name: "Restart Node"

    # switch:
      - platform: gpio
        name: "sw1"
        pin: GPIO1
        id: led_id_1

      - platform: gpio
        name: "sw2"
        pin: GPIO3
        id: led_id_3

    # switch:
      - platform: ld2410
        engineering_mode:
          name: "engineering mode"
        bluetooth:
          # name: "control bluetooth"
          name: "BLKReaderTool_app for control bluetooth"
    output:

    light:
      - platform: esp32_rmt_led_strip
        rgb_order: GRB
        pin: GPIO48
        num_leds: 30
        rmt_channel: 0
        chipset: ws2812
        name: "MyLight48"
        id: MyLight48_id

    number:
      - platform: ld2410
        timeout:
          name: timeout
        light_threshold:
          name: light threshold
        max_move_distance_gate:
          name: max move distance gate
        max_still_distance_gate:
          name: max still distance gate
        g0:
          move_threshold:
            name: g0 move threshold
          still_threshold:
            name: g0 still threshold
        g1:
          move_threshold:
            name: g1 move threshold
          still_threshold:
            name: g1 still threshold
        g2:
          move_threshold:
            name: g2 move threshold
          still_threshold:
            name: g2 still threshold
        g3:
          move_threshold:
            name: g3 move threshold
          still_threshold:
            name: g3 still threshold
        g4:
          move_threshold:
            name: g4 move threshold
          still_threshold:
            name: g4 still threshold
        g5:
          move_threshold:
            name: g5 move threshold
          still_threshold:
            name: g5 still threshold
        g6:
          move_threshold:
            name: g6 move threshold
          still_threshold:
            name: g6 still threshold
        g7:
          move_threshold:
            name: g7 move threshold
          still_threshold:
            name: g7 still threshold
        g8:
          move_threshold:
            name: g8 move threshold
          still_threshold:
            name: g8 still threshold

    button:
      - platform: ld2410
        factory_reset:
          name: "factory reset"
        restart:
          name: "restart"
        query_params:
          name: query params

    text_sensor:
      - platform: ld2410
        version:
          name: "firmware version"
        mac_address:
          name: "mac address"

    # text_sensor:
      - platform: wifi_info
        ip_address:
          name: Address
          id: ip
        ssid:
          name: SSID
        mac_address:
          name: Mac
         
      - platform: template
        name: Uptime
        update_interval: 1s
        lambda: |-
          auto s = millis() / 1000;
          return str_snprintf("%02d:%02d:%02d:%02d", 11, s / 86400, s / 3600 % 24, s / 60 % 60, s % 60);           

    select:
      - platform: ld2410
        distance_resolution:
          name: "distance resolution"
        baud_rate:
          name: "baud rate"
        light_function:
          name: light function
        out_pin_level:
          name: out pin level

    # 888888888888888888888888888888888  2024_0701_1419_32
    # <거리감도및 반응감도  조정 하기 >
    # 1)  거리0.2m와 0.75m이 있으며 게이트는 0~8까지로 2개의 곱으로 감지
    #    게이트를 5로 설정후 거리를 변경 인식 범위 확인합니다.

    # 1-1)  0.2 m * 5 = 1m 에서 감지
    # 1-2) 0.75m * 5 = 3.75m 에서 감지

    # 2) 반응 감도는 신호 감도 (threshold % ) 이상시 인식 입니다
    #  ===> 오감지 및 에러 발생시 높게 60% 설정 합니다

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    구성 변수:
    timeout ( 선택 사항 , int): 현재 상태가 떠난 후 유지되는 시간(초). 기본값은 숫자5s 의 모든 옵션입니다 .

    light_threshold ( 선택 사항 , int): 조명 함수 에 대한 조명 임계값을 설정합니다 . 값 사이 0(및 255포함). 기본값은 . 숫자128 의 모든 옵션 .

    max_move_distance_gate ( 선택 사항 , int): 움직임 감지를 위한 최대 거리 게이트. 값 사이 2( 8포함). 기본값은 8. 모든 옵션은 Number .

    max_still_distance_gate ( 선택 사항 , int): 정지 감지를 위한 최대 거리 게이트. 값 사이 2( 8포함). 기본값은 8. 모든 옵션은 Number .

    gX ( 선택 사항 ): X번째 게이트에 대한 임계값(X => 0~8).

    move_threshold ( 필수 , int): 동작 감지를 위한 게이트의 임계값. 고려된 게이트(거리)에 대한 이 레벨 이상에서는 동작 감지가 트리거됩니다. 과(을)를 0포함 하는 값 사이. 아래의 기본값을 참조하세요. Number100 의 모든 옵션 .

    still_threshold ( 필수 , int): 정지 감지를 위한 게이트의 임계값. 고려된 게이트(거리)에 대한 이 레벨보다 높으면 정지 감지가 트리거됩니다. 0과( 와) 사이의 값 100입니다. 아래의 기본값을 참조하세요. Number 의 모든 옵션입니다 .

    ld2410_id ( 선택 사항 , ID ): 여러 구성 요소를 사용하는 경우 LD2410 센서 구성 요소 의 ID를 수동으로 지정합니다 .

    게이트 임계값의 기본값


    기본 이동 임계값

    문 기본 이동 임계값
    0 50
    1 50
    2 40
    3 30
    4 20
    5 15
    6 15
    7 15
    8 15


    문 기본 정지 임계값
    0 0
    1 0
    2 40
    3 40
    4 30
    5 30
    6 20
    7 20
    8 20

    답변
    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    Home Assistant용 Hi-Link LD2410 및 ESP32를 탑재한 DIY 존재 센서
    https://smarthomescene.com/diy/diy-presence-sensor-with-hi-link-ld2410-and-esp32-for-home-assistant/

    답변

    새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-11-27 16:32:26

    오늘의 홈 현황


    • 현재 접속자♨ 319 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 4 명
    • 주간 가입자※ 14 명
    • 오늘 방문자 3,742 명
    • 어제 방문자 4,206 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,821,348 명
    • 전체 게시물※ 8,864 개
    • 전체 댓글수※ 25,244 개
    • 전체 회원수 11,335 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑