
패킷 라디오를 위한 새로운 경량 하이브리드 라우팅 메시 프로토콜
MeshCore는 LoRa 및 기타 패킷 무선기를 사용하는 임베디드 프로젝트를 위한 경량의 이식 가능한 C++ 라이브러리입니다. 인터넷 없이도 작동하는 탄력적이고 분산된 통신 네트워크를 만들고자 하는 개발자를 위해 설계되었습니다.
MeshCore는 이제 다양한 LoRa 장치를 지원하여, 수동으로 펌웨어를 컴파일할 필요 없이 쉽게 플래싱할 수 있습니다. 사용자는 Adafruit ESPTool과 같은 도구를 사용하여 사전 빌드된 바이너리를 플래싱하고, 직렬 콘솔을 통해 네트워크와 상호 작용할 수 있습니다. MeshCore는 Meshtastic 및 Reticulum과 유사한 무선 메시 네트워크를 생성하는 기능을 제공하지만, 임베디드 프로젝트를 위한 경량 다중 홉 패킷 라우팅에 중점을 둡니다. Meshtastic이 일반 LoRa 통신에 맞춰져 있거나 Reticulum이 고급 네트워킹을 제공하는 것과 달리, MeshCore는 단순성과 확장성의 균형을 유지하여 맞춤형 임베디드 솔루션에 이상적입니다. 여기서 장치(노드)는 중간 노드를 통해 메시지를 중계하여 장거리 통신이 가능합니다. 이는 전통적인 통신 인프라를 사용할 수 없는 오프그리드, 비상 또는 전술 상황에서 특히 유용합니다.
개발자용:
Simple Secure Chat 예제는 Visual Studio Code의 시리얼 모니터 또는 Android의 시리얼 USB 터미널을 통해 상호 작용할 수 있습니다.
지원되는 장치에 플래싱할 수 있는 사전 빌드 펌웨어가 준비되어 있습니다.
Companion 펌웨어
Companion 펌웨어는 플래싱한 펌웨어 유형에 따라 BLE, USB 또는 Wi-Fi를 통해 연결할 수 있습니다.
Repeater 및 Room Server 펌웨어
Repeater 및 Room Server 펌웨어는 웹 설정 도구에서 USB를 통해 설정할 수 있습니다.
또한 모바일 앱에서 원격 관리 기능을 사용하여 LoRa를 통해 관리할 수 있습니다.
MeshCore는 MeshCore Flasher에 나열된 장치용으로 설계되었습니다.
MeshCore는 MIT 라이선스 하에 배포되는 오픈소스 소프트웨어입니다. 개인 및 상업 프로젝트에서 자유롭게 사용, 수정 및 배포할 수 있습니다.
'dev' 브랜치를 기준으로 PR을 제출해 주세요! 사소한 변경 사항은 PR을 제출하면 검토해 드리겠지만, 더 '영향력이 큰' 변경 사항의 경우 먼저 Issue를 열고 논의를 시작해 주세요. 특히 이 코드베이스의 구조나 아키텍처에 영향을 미치는 경우, 원하는 목표를 먼저 명확히 하고 최선의 접근 방식에 대한 합의를 도출하는 것이 좋습니다.
다음은 준수해야 할 일반적인 원칙입니다:
우선순위를 정하는 데 도움을 주세요! 가장 관심 있는 이슈/PR에 엄지손가락 반응을 눌러 주세요. 작업 계획 시 반응 수를 고려합니다.
단위 테스트를 실행하려면 다음 명령을 실행하세요:
pio test --environment native --verbose
파이프라인에 상당히 주요한 여러 기능이 있지만, 아직 특정 일정은 정해지지 않았습니다. 대략적인 시간 순서는 다음과 같습니다: