NODEDC Mission Core monorepo: control station, device plugins, realtime spatial data and mission architecture.
Go to file
DCCONSTRUCTIONS 4c401bc59b chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
artifacts chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
docs chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
examples chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
schemas chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
src/k1link chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
tests chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
.gitattributes chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
.gitignore chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
.python-version chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
AGENTS.md chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
README.md chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
pyproject.toml chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00
uv.lock chore: initialize K1 connector pre-production scaffold 2026-07-15 15:05:18 +03:00

README.md

NDC XGRIDS K1 Connector

Pre-production research project for connecting an owner-controlled XGRIDS/LixelKity K1 to a Mac without LixelGO, firmware changes, device opening, or speculative writes.

Current status: repository scaffold and implementation plan. No command in the repository currently writes to the K1, changes the router, or installs system packages.

Available stand

  • one XGRIDS/LixelKity K1;
  • one Apple Silicon MacBook running macOS;
  • one ordinary TP-Link Deco/mesh network used by other devices;
  • no LixelGO, phone, Linux host, dedicated AP, OpenWrt, or vendor SDK.

The ordinary router is sufficient for the first gates. We first observe the existing LAN without changing it. A Guest/IoT SSID is optional and may be counterproductive if Deco isolates clients; Mac and K1 must ultimately be able to reach each other.

What is actually being proved

The project has three independent gates:

  1. K1 is operational and can record a project autonomously.
  2. Mac can discover and inspect the K1 BLE/GATT surface safely.
  3. Without LixelGO, K1 can be associated with Wi-Fi and a proprietary data session can be opened.

Only after gate 3 do point-cloud, pose, status, and camera stream decoders become meaningful implementation work. Local map.las and poses.csv prove internal capabilities, not an externally accessible network format.

Local environment

The project uses Python 3.12 in a repository-local .venv managed by uv. This does not install Python packages globally and does not modify neighboring repositories.

cd /Users/dcconstructions/Downloads/mnt/NODEDC/NDC_xgrids-k1-connector
uv sync --group dev
uv run k1link doctor
uv run pytest

doctor is intentionally non-invasive. It checks the local Python environment and reports external tools; it does not request Bluetooth permission, scan the LAN, touch the K1, alter Homebrew, or change capture permissions.

Documentation

The two supplied source documents are retained unchanged under docs/reference/. Corrections and decisions are recorded separately so their provenance remains clear.

Safety boundary

Allowed initial work is passive discovery, standard device-information reads, controlled notification listening, autonomous button operation, targeted capture of traffic to or from the confirmed K1 address, and offline analysis of owned artifacts.

BLE writes, provisioning, application-session packets, active service probes, and router configuration changes require evidence and an explicit reviewed step. Random writes, fuzzing, brute force, firmware operations, destructive file access, and credential guessing are out of scope.

Real captures, projects, router metadata, serials, credentials, maps, images, and logs are ignored by normal Git. Redacted manifests and SHA-256 inventories are committed; encrypted artifact storage will be selected only when real data exists.