DEKI/ENGINE 문서
deki-gps 0.19.0
Deki 패키지 레퍼런스
deki-gps

GPS 주변 장치. 어떤 토커든 UART로 NMEA를 읽고, 수신기의 속도를 스스로 찾으며, 위성과 고도를 보고합니다.

저장소: github.com/dekiengine/deki-gps · 최신 릴리스: 0.19.0 · 엔진 0.19.0 이상 필요 · 의존: deki-http, deki-uart

DekiEditor --packages-add deki-gps <project> 또는 패키지 관리자로 설치합니다. 엔진 자체의 컴포넌트와 C++ API는 Deki 문서에 있습니다.

에디터에는 GPS (NMEA over UART)(으)로 표시됩니다.

컴포넌트

컴포넌트 카테고리 설명
DesktopGPSComponent 시스템 데스크톱에서 GPS 수신기를 대신하여 하드웨어 없이도 위치 기능이 동작하게 합니다.
NEO6MGPSComponent 센서 UART로 u-blox NEO-6M GPS에서 위치를 읽습니다.

기능 플래그

빌드에서 뺄 수 있는 부분입니다. define이 있는 기능은 그 define으로 켜고 끄며, 나머지는 컴포넌트와 함께 제거됩니다.

기능 define 기본값
NMEA UART DEKI_FEATURE_GPS_NMEA 켜짐

컴포넌트 레퍼런스

DesktopGPSComponent

데스크톱에서 GPS 수신기를 대신하여 하드웨어 없이도 위치 기능이 동작하게 합니다.

인스펙터 이름: 데스크톱 GPS · 카테고리: 시스템 · 유형: DekiGps::DesktopGPSComponent

리플렉션된 속성이 없습니다.

NEO6MGPSComponent

UART로 u-blox NEO-6M GPS에서 위치를 읽습니다.

인스펙터 이름: NEO-6M GPS · 카테고리: 센서 · 유형: DekiGps::NEO6MGPSComponent

속성 유형 기본값 제약 설명
txPin int32 17 0~48 보드가 송신에 쓰는 GPIO로, 모듈의 RX에 연결합니다. 교차 연결이므로 이 핀이 송신하고 모듈이 수신합니다.
rxPin int32 16 0~48 보드가 수신에 쓰는 GPIO로, 모듈의 TX에 연결합니다. 위치 데이터가 이 핀으로 들어오므로, 측위가 끝내 되지 않으면 대개 이 핀이 원인입니다.
baudRate int32 9600 0~921600 시리얼 속도로, 모듈 설정과 일치해야 합니다. NEO-6M은 출고 시 9600입니다. 모듈을 38400으로 다시 설정하고 여기를 9600으로 두면, 아무것도 들어오지 않는 대신 알아볼 수 없는 데이터가 들어옵니다. 0으로 두면 자동으로 찾습니다. 유효한 NMEA가 들어올 때까지 9600, 38400, 115200, 57600, 4800을 차례로 시도하므로, 여러 종류의 모듈이 달린 보드에도 쓸 수 있습니다.
uartPort int32 1 0~2 칩의 시리얼 컨트롤러 중 어느 것을 쓸지 정합니다. 포트 0은 보통 USB 콘솔이므로, GPS에는 보통 1이나 2를 씁니다.

변경 내역

변경 내역은 영어로 되어 있습니다.

0.19.0

Changed

  • minEngine 0.19.0: built against engine 0.19.0, whose component metadata records the package each class is in. A build of this package from before does not load and is rebuilt.

Added

  • Japanese, Simplified Chinese and Korean: editor/lang/ja.json, zh.json and ko.json translate the names, tooltips and enum values this package's components show in the Inspector.

0.18.2

Added

  • IDekiGPS::Status(): sentences read, satellites in view (all constellations) and in use, altitude, and the serial speed. Indoors, where there may never be a fix, it shows whether the receiver is talking and how the search is going.
  • baudRate 0 on NEO6MGPSComponent finds the speed: 9600, 38400, 115200, 57600 and 4800 are tried until a valid sentence arrives. For a board that ships with more than one kind of module (the LilyGO T-Deck Plus: L76K or u-blox M10).
  • Reads $–GGA and $–GSV besides $–RMC, from any talker.
  • DekiGPSStatus::bytes: bytes read from the receiver, valid or not. With no sentences, bytes mean a wrong speed; none, a wrong pin or no power.

Fixed

  • A device never read its GPS. Nothing called the NMEA driver's update, so its UART was never read and there was never a fix. NEO6MGPSComponent now updates it every frame.
  • A position sentence with an empty field (no course, as when standing still) shifted every field after it, losing the date and time: fields were split with strtok, which skips empty ones.

이전 릴리스: CHANGELOG.md


패키지의 리플렉션 데이터에서 생성했습니다(엔진 0.19.0). 속성 이름은 씬 파일에서 쓰는 키입니다. 이름을 바꿔도 별칭이 유지됩니다(호환성).