프로젝트LoRaLoRaWAN 센서 네트워크 조인 실패 - CRC 에러조차 안 뜨던 무수신과 sync word
센서 30대를 LoRaWAN으로 모으려는데 노드 하나가 조인되지 않았습니다. 패킷 캡처에 CRC 에러조차 남지 않던 무수신의 원인은 sync word를 가르는 게이트웨이 토글 하나였습니다.
SEN Blog
프로젝트별 개발 과정과 시행착오를 기록합니다
40개 글
프로젝트LoRa센서 30대를 LoRaWAN으로 모으려는데 노드 하나가 조인되지 않았습니다. 패킷 캡처에 CRC 에러조차 남지 않던 무수신의 원인은 sync word를 가르는 게이트웨이 토글 하나였습니다.
프로젝트LoRa무선은 뚫렸는데 센서 실물은 현장에 있었습니다. PC에서 국번별로 센서를 연기하는 Modbus 슬레이브 시뮬레이터를 만들고, 문서 모순 네 건과 프레임을 쪼개던 버그를 잡은 기록입니다.
프로젝트LoRa30대가 각자 쏘면 주기를 5분까지 벌려야 합니다. 서버가 한 대씩 부르되 응답을 기다리지 않는 폴링으로 42초를 30초로 줄였고, 그 과정에서 업링크 감시 창과 노드 설정 도구를 만들었습니다.
프로젝트LoRa5분마다 보내고 매번 OK를 받았는데 서버에는 10분치만 남았습니다. 부분 자료로 규칙을 세워 세 번 헛짚고, 전체 목록을 한 줄씩 맞춰 원인을 찾은 기록입니다.
프로젝트LoRa상자를 깎는 일부터 서버에 데이터가 쌓이지 않는 일까지, LoRaWAN 센서 네트워크 5편을 한 페이지에 모았습니다. 매번 통과 신호가 먼저 왔고 문제는 그다음에 나왔습니다.
프로젝트PCB 자동화같은 판을 두 가지 자로 재면 두 가지 답이 나오고, 틀린 쪽은 늘 제 자였습니다. 도구를 고친 게 아니라 재는 법을 고쳐서 열 번의 어긋남을 찾아낸 기록입니다.
프로젝트LoRa간섭검사 0 mm³는 조립 가능과 다른 말이었습니다. LoRa 노드 케이스를 다섯 번 다시 만들며 알게 된, 자동 검사가 못 보는 것들을 정리했습니다.
프로젝트RP2350 터치 LCD 3.5″RP2350 Touch LCD 3.5가 부팅되지 않거나 업로드 포트를 잡지 못할 때는 USB-C를 분리하고, BOOT 버튼을 누른 채 다시 연결하면 USB 다운로드 모드로 들어갑니다.
프로젝트RP2350 터치 LCD 3.5″START 터치가 아니라 인버터 실제 운전이 확인된 순간부터 MM:SS 카운트다운을 시작하고, 설정시간이 끝나면 STOP 명령과 실제 정지 확인까지 처리하는 RP2350 터치 LCD 타이머입니다.
프로젝트RP2350 터치 LCD 3.5″RP2350 터치 LCD 3.5인치로 수동 1개와 프로그램 11개 운전 모드, 10구간 속도 그래프, RS485 Modbus RTU 인버터 제어를 갖춘 승마기구 컨트롤러를 구현했습니다.
프로젝트RP2350 터치 LCD 3.5″RS485 Modbus RTU로 인버터 RUN·STOP과 속도를 제어하고, 명령값이 아니라 인버터가 실제로 응답한 속도만 RP2350 터치 LCD 그래프에 표시했습니다.
프로젝트RP2350 터치 LCD 3.5″TTF 파일을 프로젝트에 복사하는 것만으로는 TFT LCD에 한글이 나오지 않습니다. 화면에 필요한 글자와 크기만 비트맵 데이터로 변환해 RP2350 Touch LCD 3.5에 적용한 과정입니다.
동영상을 재생하는 대신 자세가 다른 PNG 3장을 빠르게 바꾸고, 말이 움직이는 영역만 갱신해 ST7796 LCD의 깜빡임을 줄인 과정입니다.
프로젝트PCB 자동화미연결이 남았다는 것은 결론이 아니라 다음 조사의 시작점입니다. 좌표로 재고 도구를 의심하고 판정 기준을 통일한 뒤, 배치 선택까지 루프 안에 넣어 미연결 0에 도달한 기록입니다.
프로젝트PCB 자동화회로도 생성부터 DRC 0까지, PCB 설계 자동화 10편을 한 페이지에 모았습니다. 어떤 문제를 겪었고 어느 편에서 다뤘는지 순서대로 볼 수 있습니다.
프로젝트PCB 자동화8채널 보드를 16채널로 확장할 때마다 회로도와 아트웍을 다시 작업해야 했습니다. 반복 작업을 줄이기 위해 AI 자동화를 도입해 라이브러리와 파이프라인을 만들었습니다.
프로젝트PCB 자동화PADS ASCII 좌표를 1nm로 잘못 읽자 부품·배선·보드 크기가 사이좋게 1.5배가 됐습니다. 내부 정합성 검증이 전부 초록불인 채로 틀린 보드가 나온 기록입니다.
프로젝트PCB 자동화파일 전체를 깨뜨린 역슬래시, 한 칸씩 밀린 패드 필드, 추측을 세 번 틀린 3D 모델 회전 - PADS 풋프린트 1,214개와 심볼 857개를 KiCad 라이브러리로 옮기며 만난 것들입니다.
프로젝트PCB 자동화45도 규칙, 계단 배선, 끝이 허공에 뜬 안테나 - DRC가 하나도 잡아주지 않는 배선 규칙마다 검사기를 만들고, 층별 배선 방향을 DSN 파일에 직접 주입한 기록입니다.
프로젝트PCB 자동화측정이 대상을 바꾸면 그건 데이터가 아닙니다. 검사 명령이 보드를 덮어쓰던 문제와, 선을 몰래 깎아 DRC를 통과시키던 보정 스크립트를 잡아낸 기록입니다.
프로젝트PCB 자동화넷당 꺾임 12.9회, 우회율 최대 3.0배 - 16채널 보드를 2층에 우겨넣고 있었다는 것을 확인하고, KiCad에서 구리층을 4층으로 바꾼 뒤 층별 배선 방향을 다시 넣은 과정입니다.
프로젝트PCB 자동화자동화에서 제일 오래 걸리는 곳은 첫 90%가 아니라 마지막 1건이었습니다. 단락·미연결·클리어런스로 우선순위를 정하고, 막힌 자리는 벽을 옮기는 트랜잭션으로 푼 과정입니다.
프로젝트PCB 자동화DRC 0, 미연결 0, 단락 0을 다섯 번 재서 다섯 번 같은 값으로 확인했습니다. 임의각 0까지 정리한 마지막 회차와, 자동화 도구가 거짓말하는 일곱 가지 방식을 정리했습니다.
프로젝트PCB 자동화제가 잰 지표가 통과했다는 것은 제가 안 잰 항목이 맞다는 증거가 아닙니다. 완성이라 부른 뒤의 리뷰에서 드러난 회로도·라벨·각도의 구멍과, 그것을 막으려 만든 게이트들입니다.
프로젝트맥주 게임기새 부품 없이 맥주 레버만 다시 써서 낚시 게임을 만들었습니다. 설계는 우아했는데 해보니 재미가 없었고, 막연한 감상 네 개를 정확한 숫자 네 개로 번역하는 과정이 이 글의 본론입니다.
프로젝트맥주 게임기레버 하나로 시작해 게임 네 개가 들어간 아케이드 게임기까지, 7편을 한 페이지에 모았습니다. 어떤 부품이 어떤 게임을 데려왔는지 순서대로 볼 수 있습니다.
프로젝트맥주 게임기아날로그 조이스틱이 먼저 있었고 게임이 따라왔습니다. 밤하늘을 올라가며 적을 쏘는 세로 스크롤 슈팅을 만들면서 메모리 주소 이사, 총알 인과 붕괴, 갱신 간격 문제를 차례로 밟았습니다.
프로젝트맥주 게임기2부에서 예고한 ERM 진동모터를 달았지만 레버를 당겨도 세기가 그대로였습니다. 그럴듯한 추리를 두 번 하고 두 번 틀린 끝에, 값을 직접 찍어보고 나서야 원인이 출력 범위였다는 걸 알았습니다.
프로젝트맥주 게임기타이틀 화면을 게임 선택 메뉴로 바꾸고 블랙잭을 두 번째 게임으로 꽂았습니다. 물리 버튼 4개로 히트와 스테이를 치는 교대 딜 변형 룰이고, 첫 게임의 순위표·통신 계층을 그대로 물려받아 절반의 시간에 끝났습니다.
프로젝트맥주 게임기HMI 화면을 살아있게 만든 하루입니다. 애니메이션 다섯 종과 코드로 그린 술집 배경, 그리고 도형 곰 4대의 실패 끝에 AI가 다른 AI에게 그림을 시킨 이야기입니다.
프로젝트맥주 게임기맥주 게임기 2부입니다. Blender로 볼 레버와 가변저항 기둥을 모델링해 3D 프린터로 뽑았고, 프로콘에서 적출한 진동 소자 이식은 장렬히 실패했습니다. 소자와 보드의 궁합이라는 교훈이 남았습니다.
프로젝트Lyra Zero W같은 벤치마크 코드를 양쪽 실기에서 돌려 라즈베리파이 Zero 2 W와 Luckfox Lyra Zero W를 비교했습니다. 스펙만 보면 Pi가 이길 것 같았는데, 클럭이 높은 Lyra가 단일코어에서 앞섰습니다.
프로젝트Lyra Zero WZPi Controller의 심장인 라즈베리파이 Zero 2 W가 품절됐습니다. RK3506B를 얹은 Luckfox Lyra Zero W를 대체품으로 골라 이미지 굽기부터 커널 재빌드, 실제 CAN 제어까지 돌려봤습니다.
프로젝트맥주 게임기크랭크를 돌려 루트비어를 따르는 Playdate 게임 〈Root Bear〉를, 포텐셔미터 레버와 터치패널을 붙인 실물 아케이드 게임기로 옮겼습니다. 취미로 시작했는데 속은 진짜 산업 설비인 물건이 하루 만에 나왔습니다.
프로젝트Arduino 웹 업로더USB 케이블을 들고 장비 앞까지 가는 왕복을 없앴습니다. 라즈베리파이 한 대를 공용 업로더로 만들어 브라우저에서 컴파일과 플래시, 시리얼 확인까지 처리한 기록입니다.
프로젝트AI 콘텐츠 제작디자인 툴 없이 HTML/CSS로 짜고 Chrome으로 PDF를 뽑아 인쇄소에 넘겼습니다. bleed와 접지 룰, 폰트 윤곽선까지 요구사항을 맞춰간 반복 과정의 기록입니다.
프로젝트Blender MCPBlender MCP와 Claude Code로 3D 프린트 케이스 4종을 하루에 설계했습니다. 완성 3종의 STL과 파라메트릭 치수 관리 방식, 일곱 번 고쳐도 안 됐던 한 건의 교훈까지 정리했습니다.
프로젝트무대 HMI무대에서 스위치 하나를 잘못 누르면 세트가 오작동합니다. 상태가 한눈에 보이는 1024×600 터치 패널을 만들며 겪은 시각화 재설계와 GPIO 충돌, 통신 끊김 감지 기록입니다.
프로젝트Modbus HMI 전환폰을 들고 있어야 하고 누적 수량도 통신 상태도 없던 교육용 키트를, 레지스터 표를 먼저 정하고 유선 Modbus RTU와 터치 HMI로 옮긴 기록입니다.
프로젝트Going.IDE빈 솔루션에서 v1.2.0.5까지 7일. 보드 카탈로그와 코드 생성, 빌드, 시리얼 모니터를 한 창에 묶으며 부딪힌 트러블슈팅 7건과 AI 코딩 패턴을 정리했습니다.