LoRa 센서망시리즈 · 5편
-
1편CRC 에러조차 안 뜨는 무수신: 모듈 두 개를 불량으로 몰았던 sync word 이야기
센서 30대를 무선으로 모으는 일을 맡았습니다. 게이트웨이는 이미 다른 장치 40여 대가 붙어 돌고 있었고, 거기에 노드 하나만 더 붙이면 되는 일이었습니다. 그런데 조인이 안 됐습니다. 패킷 캡처에는 CRC 에러조차 안 남았습니다. 모듈을 불량으로 몰아 교체까지 했는데, 원인은 토글 스위치 하나였습니다.
-
2편실기기 없이 센서를 만듭니다: PC에서 센서인 척하는 프로그램
무선은 뚫렸는데 센서가 없었습니다. 실물은 현장에 있고, 개발은 책상에서 해야 했습니다. 그래서 PC에서 센서 흉내를 내는 슬레이브 시뮬레이터를 만들었습니다. 프로토콜 문서를 구현하다 합계와 필드 표가 어긋나는 곳을 넷 발견했고, 정상 프레임을 깨진 프레임 두 개로 둔갑시키던 제 버그도 잡았습니다.
-
3편기다리지 않는 폴러: 30대를 42초에서 30초로, 그리고 도구 두 개
장치가 각자 알아서 올려 보내면 30대에서는 주기를 5분까지 벌려야 충돌을 피합니다. 그래서 서버가 한 대씩 부르는 방식으로 바꿨는데, 응답을 기다리면 30대에 42초가 걸렸습니다. 기다리지 않기로 하자 30초가 됐습니다. 그 과정에서 만든 감시 창과 설정 도구 이야기입니다.
-
4편간섭 0 mm³인데 조립이 안 된다: LoRa 노드 케이스 설계기
RAK19011 기반 LoRa 센서 폴링 노드를 제품으로 만들려고 케이스를 설계했습니다. 간섭검사는 계속 0 mm³를 찍었는데 조립 불가가 다섯 번 나왔습니다. 마지막엔 나사 보스가 통째로 사라진 케이스에 대고 "이상 없음"이라고 답하고 있었습니다.
-
5편서버는 OK를 주는데 절반이 사라진다: LoRa 센서망 전송 디버깅
LoRaWAN Class C 폴링으로 센서를 모으고 게이트웨이 단독으로 서버에 올리는 시스템을 만들었습니다. 그런데 5분마다 보내는 데이터가 서버에는 10분 간격으로만 쌓였습니다. 전송은 매번 OK 응답을 받는데도요. 원인을 세 번 잘못 짚고 네 번째에 찾았습니다. 부분 자료로 규칙을 세우면 어떻게 되는지에 대한 기록입니다.