ESP32-C3에서 ESP-NOW Long-Range(LR) 모드를 설정하려면 Wi-Fi 물리 계층(PHY) 설정을 직접 제어해야 합니다. 이 모드는 데이터 전송 속도를 낮추는 대신, 수신 감도를 대폭 높여 장애물 통과 능력과 통신 거리를 약 2~3배가량 늘려줍니다.
MicroPython 환경에서 사용할 수 있는 최적화된 설정 예제를 정리해 드립니다.
💡 ESP-NOW Long-Range 설정 핵심 코드 (MicroPython)
이 코드는 송신기와 수신기 양쪽 보드 모두에 동일하게 적용되어야 통신이 가능합니다.
Python
🛠️ 왜 이 코드가 더 멀리 가나요?
network.MODE_LR: 이 명령은 Wi-Fi 칩셋이 낮은 비트레이트를 사용하여 신호를 더 길게 쏘도록 만듭니다. 일반 Wi-Fi 신호가 닿지 않는 “데드존”에서도 통신이 유지됩니다.sta.disconnect(): 로봇카가 이동 중에 주변 와이파이 공유기(AP)를 찾으려고 시도하면 통신이 튀거나 지연이 발생할 수 있는데, 이를 사전에 차단합니다.- 고정 채널 (추가 팁): 주변 환경에 따라
sta.config(channel=6)처럼 채널을 명시적으로 지정하면 간섭을 더 효과적으로 피할 수 있습니다.
⚠️ 주의사항 (꼭 읽어보세요!)
- 양방향 필수: 송신기는 LR 모드인데 수신기가 일반 모드라면 데이터를 받지 못합니다. 반드시 조종기와 로봇카 둘 다 설정하세요.
- 속도 저하: 전송 거리가 늘어나는 대신 대역폭이 줄어듭니다. 하지만 조종기 데이터(몇 바이트 수준)를 보내는 데는 전혀 지장이 없습니다.
- 전력 소모: 신호를 더 강하고 길게 유지하므로 배터리 소모가 일반 모드보다 약간 더 빠를 수 있습니다.


답글 남기기
댓글을 달기 위해서는 로그인해야합니다.